go - 计算通过网络接收的传入请求的大小
问题描述
我正在研究一个基于 ReverseProxy 的项目,我试图弄清楚如何计算整个传入请求的大小。即包括标题、正文和拖车。
由于速度很重要,我不想通过将解析请求的各个字段相加来计算它,而是在读取传入请求时寻找一种方法。
据我所见,“request.go”中的 readRequest 函数似乎是最合适的地方,但我不确定如何修改它或包装这个函数来计算大小。
解决方案
在这里找到了解决方案 -在 http.Handler ServeHTTP 函数中计算 Go 中发送和接收的字节数?
它可以修改为在反向代理场景中工作,并且完全符合我的要求。
更新:这个 Github 代码在最终解决方案中也非常有用。https://github.com/j0hnsmith/connspy
现在,当使用 Golang 作为反向代理时,我可以通过网络接收和发送原始数据
希望这对将来的人有所帮助
推荐阅读
- node.js - 我在使用 node.js 安装或创建东西时遇到问题
- google-cloud-platform - 如何将开始和结束日期传递给 Data Studio 中的报表?
- r - 使用 Stringr 简化清理推文文本
- dax - 根据使用 DAX 的工作日数比较 MTD 与上个月
- google-sheets - 谷歌表格中的自动序列号和文本:“数字 - 文本”通过拖动
- python - 修改列表中的值
- obs - 如何解决我的 obs 插件的断断续续的声音?
- python - 在特定文件夹中时python导入错误
- javascript - Discord JS 客户端仅在公会成员缓存中拥有自己
- python - 等待python中的值更改