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-carbon 1.2.6 版本发布,优化错误处理机制,弃用出错直接panic的粗暴处理方式

go 语言数据类型

静态网站 介绍

go singleton

go语言————3、编辑器、集成开发环境与其它工具

29 golang反射与底层编程

golang和c的区别是什么?

golang两个协程交替输出

手撸golang 基本数据结构与算法 插入排序

golang 语言的内存管理

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




打赏

取消

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

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

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

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

评论

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