Trong dự án của tôi, tôi có một lát byte từ phản hồi của yêu cầu.
defer resp.Body.Close()
if resp.StatusCode != http.StatusOK {
log.Println("StatusCode为" + strconv.Itoa(resp.StatusCode))
return
}
respByte, err := ioutil.ReadAll(resp.Body)
if err != nil {
log.Println("fail to read response data")
return
}
Điều này hoạt động, nhưng nếu tôi muốn nhận được phản hồi của cơ thể io.Reader
, làm cách nào để chuyển đổi? Tôi đã thử trình đọc / viết mới nhưng không thành công.
—
ANisus
@Arjan yap ~ body ... tôi muốn nhận được phản hồi là io.reader. Nhưng trong lớp cơ sở khi tôi hoàn thành yêu cầu, phản hồi đã bị giết .. chỉ cần lưu nội dung phản hồi dưới dạng [] byte trong struct.
—
Chan Willson
@ANisus tôi sẽ thử .... thx dude..bằng cách ... nó trông giống như kiểu khác ..
—
Chan Willson
@ChanWillson: Yêu cầu đó có ý nghĩa hơn, cơ thể không thể được đọc sau khi đóng nó. Theo đề xuất sử dụng
—
Arjan
*bytes.Reader
mà thực hiện io.Reader
giao diện.
io.Reader
thế nào? Trong trường hợp đó, resp.Body đã thuộc loại đó.