首页
下载
文档
社区
视频
捐赠
源代码
赞助商
AOT 编译器
AI 助理
商业产品
PHP AOT 原生编译器
Swoole-Compiler 代码加密器
CRMEB 新零售社交电商系统
登录
注册
全部
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
发表新帖
swoole http_server 自动覆盖 'Content-Length',手动设置无效吗?
### 问题描述 swoole http_server 自动覆盖 'Content-Length' 。比如我手动设置了1024,实际上返回的内容长度为1023,则手动设置的1024会变为1023 不过官方的示例这里,还有设置这个的示例: https://wiki.swoole.com/#/http_server?id=setheader ### Swoole版本,PHP版本,以及操作系统版本信息 Version => 4.4.3 ### 相关代码 ```php $response->header('Content-Length', $range[1] ? strlen($fileContent) : $contentLengthAll); $response->header('Content-Length-Test', $range[1] ? strlen($fileContent) : $contentLengthAll); ``` ### 你期待的结果是什么?实际看到的错误信息又是什么? 按道理,'Content-Length' 'Content-Length-Test'应该是一样的,但是实际上如下。感觉是httpserver底层会自动根据实际返回的内容来更新“Content-Length”: HTTP/1.1 206 Partial Content Content-Length: 1048576 Content-Length-Test: 296332829 Content-Range: bytes 0-296332828/296332829 Last-Modified: Tue, 18 May 2021 08:24:14 GMT Etag: "tag-1621326254" Expires: Sat, 22 May 2021 08:43:10 GMT Content-Type: video/mp4 Content-Test: 1122 Cache-Control: max-age=3600 Server: swoole-http-server Connection: keep-alive Date: Sat, 22 May 2021 07:43:10 GMT
发布于5年前 · 8 次浏览 · 来自
提问
轻轻的烟雾
### 问题描述 swoole http_server 自动覆盖 'Content-Length' 。比如我手动设置了1024,实际上返回的内容长度为1023,则手动设置的1024会变为1023 不过官方的示例这里,还有设置这个的示例: https://wiki.swoole.com/#/http_server?id=setheader ### Swoole版本,PHP版本,以及操作系统版本信息 Version => 4.4.3 ### 相关代码 ```php $response->header('Content-Length', $range[1] ? strlen($fileContent) : $contentLengthAll); $response->header('Content-Length-Test', $range[1] ? strlen($fileContent) : $contentLengthAll); ``` ### 你期待的结果是什么?实际看到的错误信息又是什么? 按道理,'Content-Length' 'Content-Length-Test'应该是一样的,但是实际上如下。感觉是httpserver底层会自动根据实际返回的内容来更新“Content-Length”: HTTP/1.1 206 Partial Content Content-Length: 1048576 Content-Length-Test: 296332829 Content-Range: bytes 0-296332828/296332829 Last-Modified: Tue, 18 May 2021 08:24:14 GMT Etag: "tag-1621326254" Expires: Sat, 22 May 2021 08:43:10 GMT Content-Type: video/mp4 Content-Test: 1122 Cache-Control: max-age=3600 Server: swoole-http-server Connection: keep-alive Date: Sat, 22 May 2021 07:43:10 GMT
赞
0
收藏
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
登录
后参与评论
评论
2021-05-23
鲁飞
低版本都是由Swoole来计算的。 高版本支持由应用层传入。https://wiki.swoole.com/#/version/log?id=v463
赞
1
回复
2021-05-24
轻轻的烟雾
回复
鲁飞
谢谢指教。明白了。 另外,用这个倒也可以实现:https://wiki.swoole.com/#/http_server?id=detach 在另外:文档的搜索结果,左侧,有时候点击,不能跳转到对应的地方。这个地方(https://wiki.swoole.com/#/version/log?id=v463) 我之前搜“content-length”的时候搜到过,但是没点进去,就没有细看,给忽略了。
赞
0
回复