通过HTTPClient工作时,ASIHTTPRequest发布请求失败

时间:2013-01-08 07:35:44

标签: objective-c ios post asihttprequest

正如标题中所述,我使用POST发送了ASIHTTPRequest请求但失败了,但同一POST请求在HTTPClient中有效,我做错了什么?

- (void)postData:(NSData *)postData {
    //...
    NSMutableData *mutableData = [postData.mutableCopy autorelease];
    [request setRequestMethod:@"POST"];
    [request setPostBody:mutableData];
    [request setPostLength:mutableData.length];
    //....
}

2 个答案:

答案 0 :(得分:1)

好的,我发现了问题,由于某种原因,我无法做到

[request setPostBody]

我必须使用

[request appendPostData:[theString dataUsingEncoding:NSUTF8StringEncoding]]

代替。

答案 1 :(得分:1)

在所有情况下,这还不够,至少我还必须在请求中添加正确的Content-Type标头:

[request addRequestHeader:@"Content-Type" value:@"application/x-www-form-urlencoded"];
[request appendPostData:[theString dataUsingEncoding:NSUTF8StringEncoding]]