2012-02-16 134 views
3

这是我今天的一个非常简单的问题。是否可以将特定的HTTP协议版本设置为NSURLRequest对象(例如1.0或1.1)?NSURLRequest http协议版本

什么我谈论关于远程登录的一个例子:

pavlov:~ pavlov$ telnet ya.ru 80 
Trying 87.250.250.3... 
Connected to ya.ru. 
Escape character is '^]'. 
GET /index.php HTTP/1.0 
+0

好问题,我看到,您可以设置标题值我们NSMutableURLRequest但版本不是头。还有一个方法propertyForKey:inRequest:可能会给你的版本选项? – rooftop 2012-02-16 15:23:25

回答

1

你不能改变一个NSURLRequest的HTTP版本。但是,您可以使用CFNetwork框架。它是基于NSURLConnection的C框架。

CFHTTPMessageCreateRequest函数使用任意HTTP协议版本创建新消息。然后,该消息可以用于使用CFReadStreamCreateForHTTPRequest函数来创建输入流。

文档:CFNetwork - Communicating with HTTP Servers

+0

据我所知 - NSURLRequest默认请求的HTTP协议版本是1.1? – 2012-02-17 13:56:11

+0

是的,它默认为'HTTP/1.1' – 2012-02-20 14:09:45