HTTP响应头Content-Length中的逗号来自哪里?

3
我正在使用Fiddler来监控对我们的ServiceStack API的调用,我发现Content-Length字段中有一个逗号。只有在部署到特定的Windows服务器时才会出现这种情况。这是什么意思?
Content-Length: 611,0

整个响应:
HTTP/1.1 200 OK
Cache-Control: private
Content-Length: 611,0
Content-Type: text/plain
ETag: 635102562728230000
Server: Microsoft-IIS/8.0
X-Powered-By: ServiceStack/3.955 Win32NT/.NET
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
Access-Control-Allow-Headers: Content-Type
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Wed, 24 Jul 2013 19:03:34 GMT

raw data removed but it is 611 characters

我认为Content-Length字段中不允许使用逗号。

我也不认为它是有效的。内容的实际长度是多少? - Barmar
实际长度为611。 - kampsj
1个回答

5
很可能是由于有两个Content-Length头字段,一个值为“611”,另一个值为“0”,并且某些内容将它们合并为一个字段值。

这种情况确实发生了。你的回答帮助我重新思考了问题。我曾经设置过Content-Length头,但在ServiceStack核心中,因为我在服务实现中返回了null,所以content-header被设置为零。然后这两个值被合并成一个逗号分隔的头部值。 - kampsj
这是另一个对我有帮助的关于多个头字段的链接 https://dev59.com/KnA75IYBdhLWcg3wy8fr - kampsj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接