NSMutableURLRequest修改标头字段

Tre*_*vor 0 cocoa objective-c nsmutableurlrequest

NSMutableURLRequest显然改变了标题字段的大小写.

例如,设置:

[request addValue:myValue forHTTPHeaderField:@"FOOBAR"];
Run Code Online (Sandbox Code Playgroud)

将标题字段更改为"Foobar".

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

另外,NSMutableURLRequest不应该真的为我做出决定.

Dav*_*ong 8

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

字段名称不区分大小写.

文档,其中说:

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

因此,我们可以得出结论,这NSURLRequest实际上只是标准化头字段的大小写.多么体贴.=)

看起来你运气不好.

编辑:"我正在使用一个需要传递区分大小写字段的服务." 由于HTTP/1.1协议将头字段名称定义为不区分大小写,因此该服务正在破坏协议.互联网已经充满了关于公司和服务为了自己的利益而试图忽略协议时会发生什么的例子.(例如:曾经尝试过编写一个可以在Firefox和IE6中运行的网页吗?)如果可以,我会避免使用这项服务,或者写信给他们,让他们知道他们在做什么以及为什么这是错误的.