NSMutableURLRequest 显然改变了标头字段的大小写。

例如,设置:

[request addValue:myValue forHTTPHeaderField:@"FOOBAR"];

将标题字段更改为“Foobar”。

有人知道解决这个问题的方法吗?我正在使用一项需要传递区分大小写字段的服务。

另外, NSMutableURLRequest 不应该真正为我做出决定。

有帮助吗?

解决方案

NSMutableURLRequest 遵循 HTTP/1.1 的 RFC 2616 规范 其中说:

字段名称不区分大小写。

或者 文档, ,其中说:

为了与 HTTP RFC 保持一致,HTTP 标头字段名称不区分大小写。

所以我们可以得出结论 NSURLRequest 实际上只是标准化标题字段的大写。多么周到啊。=)

看来你运气不好。

编辑:“我正在使用一项需要通过案例敏感领域的服务。”由于HTTP/1.1协议将标头字段名称定义为不敏感的标题字段名称,因此此服务正在破坏协议。互联网上已经有很多例子说明当公司和服务试图为了自身利益而忽略协议时会发生什么。(前任:曾经尝试过编写可在 Firefox 和 IE6 中运行的网页吗?)如果可以的话,我会避免使用此服务,或者写信给他们,让他们知道他们在做什么以及为什么这是错误的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top