标签:
AFNetworking框架默认请求类型和响应类型都是JSON格式的,在特殊情况下,我们使用字符串形式的时候,就会报3840错误,如何解决呢?
设置请求管理者:
// 因为传递过去和接收回来的数据都不是json类型的,所以在这里要设置为AFHTTPRequestSerializer和AFHTTPResponseSerializer mgr.requestSerializer = [AFHTTPRequestSerializer serializer];// 请求 mgr.responseSerializer = [AFHTTPResponseSerializer serializer];// 响应
2.在success中将responseObject转换为一个字符串
// 转码 NSString *string = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];
整体方法:
// 1.获得请求管理者 AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager]; // 因为传递过去和接收回来的数据都不是json类型的,所以在这里要设置为AFHTTPRequestSerializer和AFHTTPResponseSerializer mgr.requestSerializer = [AFHTTPRequestSerializer serializer];// 请求 mgr.responseSerializer = [AFHTTPResponseSerializer serializer];// 响应 // 2.发送GET请求 [mgr GET:url parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) { if (success) { // 转码 NSString *string = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding]; NSLog(@"%@",string) } } failure:^(AFHTTPRequestOperation *operation, NSError *error) { if (failure) { failure(error); } }];
AFNetworking发送和接收字符串时报3840错误的解决办法
标签:
原文地址:http://my.oschina.net/hehongbo/blog/530174