看來頭字段(即@「Content-Type」)的設置值不會取值,除非它是base64編碼的。該方法文檔說它需要一個普通的NSString,所以它真的不應該。但是,以這種方式對其進行編碼似乎會使提交請求的價值無用......對嗎? 見下圖:NSMutableURLRequest - 爲什麼不用普通的NSString設置標題值?
[req setHTTPBody:allData];
[req setHTTPMethod:@"POST"];
[req setValue:@"multipart/related; "
"boundary==_27da60ee13b84794c5873572c502aaae\n" forHTTPHeaderField:@"Content-Type"];
NSLog(@"\n\n\t\t===headerField content-type===\n\n%@", [req valueForHTTPHeaderField:@"Content-Type"]);
產量:
2010-12-22 09:53:23.008 uploadXMLText[96009:207]
===headerField content-type===
(null)
但是,如果我編碼字符串值@ 「多......」 爲base64:
產量:
2010-12-22 10:06:37.185 uploadXMLText[96234:207]
===headerField content-type===
bXVsdGlwYXJ0L3JlbGF0ZWQ7IGJvdW5kYXJ5PT1fMjdkYTYwZWUxM2I4NDc5`*
任何想法的人?
謝謝!
我
感謝喬納森,證明你是對的\ n(換行)問題,但在很多方面比你知道的。如果NSMutableURLRequest在任何地方都有換行符,它將不會添加頭,這就是爲什麼我的Authorization頭永遠不會(在末尾有一個隱藏的\ n)! – 2010-12-22 22:13:25