2012-02-16 131 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