您的位置:首页 > 移动开发 > IOS开发

iOS最基本的post请求和Unicode转码

2015-11-19 16:36 423 查看
今天开发遇到怪事,afn的请求总是被默认成Unicode编码,为了解决问题
直接从最基本的请求和数据类型开始。

post请求,系统自带的
method可以为nil,但是data必须是json串转化来的
- (void)sendRequestToUrl:(NSString*)urlString method:(NSString*)method
data:(NSData*)data completionHandler:(void (^)(NSData *data,NSURLResponse
*response, NSError *error))completionHandler
{
NSURLSessionConfiguration * urlSessionConfiguration = [NSURLSessionConfigurationdefaultSessionConfiguration];
NSURLSession * urlSession = [NSURLSessionsessionWithConfiguration:urlSessionConfiguration];
NSURL *url = [NSURLURLWithString:urlString];
NSMutableURLRequest *request = [NSMutableURLRequestrequestWithURL:url];
request.HTTPMethod =@"POST";
request.HTTPBody = data;
NSURLSessionDataTask * urlSessionDataTask = [urlSessiondataTaskWithRequest:requestcompletionHandler:completionHandler];
[urlSessionDataTaskresume];
}

返回的信息需要转码就直接使用

unicode转化
- (NSString *)replaceUnicode:(NSString *)unicodeStr
{

NSString *tempStr1 = [unicodeStrstringByReplacingOccurrencesOfString:@"\\u"withString:@"\\U"];
NSString *tempStr2 = [tempStr1stringByReplacingOccurrencesOfString:@"\""withString:@"\\\""];
NSString *tempStr3 = [[@"\""stringByAppendingString:tempStr2]stringByAppendingString:@"\""];
NSData *tempData = [tempStr3dataUsingEncoding:NSUTF8StringEncoding];
NSString* returnStr = [NSPropertyListSerializationpropertyListFromData:tempData
mutabilityOption:NSPropertyListImmutable
format:NULL
errorDescription:NULL];
// NSLog(@"%@",returnStr);
return [returnStrstringByReplacingOccurrencesOfString:@"\\r\\n"withString:@"\n"];
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: