0
我正在研究與遠程WS進行交互的iOS應用程序。 由於WS的URL可能會不時發生變化,因此應用程序應將所有請求發送到固定且穩定的URL,以便將它們重定向到WS的實際URL。在iOS中處理帶空體的重定向HTTP POST請求
這裏是我的代碼:
- (NSURLRequest *)connection: (NSURLConnection *)connection
willSendRequest: (NSURLRequest *)request
redirectResponse: (NSURLResponse *)redirectResponse {
if (redirectResponse) {
NSMutableURLRequest *r = [lastRequest mutableCopy];
[r setURL: [request URL]];
return r;
} else {
return request;
}
}
其中lastRequest是已發送的原始請求的副本。
這是我的問題:我不知道爲什麼,但是新的請求,即r,與一個空的身體(無參數)發送。看起來像原始請求的所有參數都會丟失,即使我使用了原始請求的精確副本。
你們認爲什麼?我怎樣才能解決這個問題?
謝謝!
is lastRequests postBody good? :: assert([[lastRequest HTTPBody] length]); –
如果您不使用ARC,則可能需要保留r。你也可以嘗試使用複製代替mutableCopy。 –