【发布时间】:2018-04-08 22:47:26
【问题描述】:
我们仅在 iOS 8 版本上面临域错误,无法从 API 获得响应,但相同的代码在 iOS 10 版本上运行良好。我已在下面附上所需的信息,请检查并告诉我是否有任何解决方案。
AFNetworking 版本:3.1.0
错误:
" Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: unauthorized (401)" UserInfo=0x7fd440dc6e00 {com.alamofire.serialization.response.error.response=<NSHTTPURLResponse: 0x7fd44586cbb0> { URL: http://......../users/login } { status code: 401, headers {
"Accept-Ranges" = none;
Connection = "keep-alive";
"Content-Length" = 381;
"Content-Type" = "text/html; charset=iso-8859-1";
Date = "Fri, 27 Oct 2017 10:17:40 GMT";
"Keep-Alive" = "timeout=5, max=100";
"Proxy-Support" = "Session-Based-Authentication";
Server = Apache;
Via = "HTTP/1.1 sophos.http.proxy:3128";
"Www-Authenticate" = "Basic realm="Restricted"";
} }"
代码:
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
[manager POST:url parameters:parameters
constructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData)
{
} progress:^(NSProgress * _Nonnull uploadProgress) { } success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject)
{
NSLog(@"responseObject %@",responseObject);
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error)
{
NSLog(@"err : %ld",(long)[error code]); NSLog(@"err : %@",[error description]);
}];
API: HTTP(开发)
我们添加了 ATS 密钥,
<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
在 plist 中。
如果有解决办法请告诉我。
谢谢!
【问题讨论】:
标签: ios objective-c afnetworking-3 app-transport-security