golang如何复用http.request.body


当前第2页 返回上一页

1

2

3

4

5

6

7

// 把request的内容读取出来

var bodyBytes []byte

if c.Request.Body != nil {

 bodyBytes, _ = ioutil.ReadAll(c.Request.Body)

}

// 把刚刚读出来的再写进去

c.Request.Body = ioutil.NopCloser(bytes.NewBuffer(bodyBytes))

1.我们先将body从http.request里面读取出来,保存到一个变量里面。

2.然后再将变量里面的数据使用ioutil.NopCloser方法写回到http.request里面。

1

2

https://golang.org/pkg/io/ioutil/#NopCloser

NopCloser returns a ReadCloser with a no-op Close method wrapping the provided Reader r.

NopCloser用一个无操作的Close方法包装Reader r返回一个ReadCloser接口。

这样我们就可以再次使用c.request来进行处理了。

以上就是golang如何复用http.request.body的详细内容,更多文章请关注木庄网络博客!!

返回前面的内容

相关阅读 >>

模块二 go语言进阶技术-错误处理(上)

go select

redis go语言与redis数据库交互

模块一 go语言基础知识-库源码文件

源码读起来,go源码共读计划

golang如何打包在linux上部署

golang可以热更新吗

golang+libreffice6.2实现word,excel,pptx转pdf,html

洗牌算法的golang实现,随便学习几个知识点

golang中的defer关键字

更多相关阅读请进入《golang》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...