【发布时间】:2012-08-10 13:20:57
【问题描述】:
是否可以设置为http body不编码字符串?
NSData *postData = [postString dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody:postData];
是否可以这样做:
NSString *postLength = [NSString stringWithFormat:@"%d", [postString length]];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody:postString];
我试过这个并得到一个错误: 由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'-[__NSCFString bytes]:无法识别的选择器发送到实例
【问题讨论】:
-
你试过了吗?我的猜测是它会起作用。
-
你要发布数据,没有理由设置Content-Length,因为它会根据body来设置。
-
来自 NSURLRequest - (NSData *)HTTPBody
标签: objective-c ios request