iOS AFnetworking post请求 直接post上去一个json格式的数据 报Domain=com.alamofire.error.serialization.response Code=
来源:互联网 发布:linux rm -rf 编辑:程序博客网 时间:2024/05/10 16:28
NSMutableDictionary * parameters = [NSMutableDictionary dictionaryWithCapacity:1];
/*
*参数在这里省去
/
sessionManager.requestSerializer = [AFJSONRequestSerializer serializer];
sessionManager.requestSerializer.timeoutInterval = requestTime; //设置请求超时时间
sessionManager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html",@"text/plain", nil];
[sessionManager POST:[NSString stringWithFormat:@"%@api/v1/dog/dognewborn",URL_NEWGAME] parameters:parameters success:^(NSURLSessionDataTask * _Nonnull task, id _Nonnull responseObject) {
NSLog(@"%@",responseObject);
NSLog(@"mag = %@",[responseObject objectForKey:@"msg"]);
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
failure(task,error);
NSLog(@"error= %@",error);
long flag = error.code;
switch (flag) {
case -1009:
[MBProgressHUD showError:@"网络好像连接不上了,请重试"];
break;
case -1001:
[MBProgressHUD showError:@"请求超时,请稍后重试 "];
break;
default:
break;
}
}];
结果报以下错误:
Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: unauthorized (401)" UserInfo={com.alamofire.serialization.response.error.response=<NSHTTPURLResponse: 0x7b6023b0> { URL: http://****************/dognewborn } { status code: 401, headers {
"Content-Length" = 0;
Server = "Jetty(7.6.14.v20131031)";
} }, NSErrorFailingURLKey=http://******************/dognewborn, NSLocalizedDescription=Request failed: unauthorized (401), com.alamofire.serialization.response.error.data=<>}
401错误,网上提示说是没有权限访问该接口,甚是郁闷,看了安卓那边,发现他们调的接口,需要把token拼接到url后面即:[NSString stringWithFormat:@"%@api/v1/dog/dognewborn?token=%@",URL_NEWGAME,token]
安卓的网络请求框架是自动把token添加到接口后面,af需要自己拼上去,才能请求。改正后代码如下:
NSMutableDictionary * parameters = [NSMutableDictionary dictionaryWithCapacity:1];
/*
*参数在这里省去
/
sessionManager.requestSerializer = [AFJSONRequestSerializer serializer];
sessionManager.requestSerializer.timeoutInterval = requestTime; //设置请求超时时间
sessionManager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html",@"text/plain", nil];
[sessionManager POST:[NSString stringWithFormat:@"%@api/v1/dog/dognewborn?token=%@",URL_NEWGAME,token] parameters:parameters success:^(NSURLSessionDataTask * _Nonnull task, id _Nonnull responseObject) {
NSLog(@"%@",responseObject);
NSLog(@"mag = %@",[responseObject objectForKey:@"msg"]);
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
failure(task,error);
NSLog(@"error= %@",error);
long flag = error.code;
switch (flag) {
case -1009:
[MBProgressHUD showError:@"网络好像连接不上了,请重试"];
break;
case -1001:
[MBProgressHUD showError:@"请求超时,请稍后重试 "];
break;
default:
break;
}
}];
最后请求成功,问题解决。
- iOS AFnetworking post请求 直接post上去一个json格式的数据 报Domain=com.alamofire.error.serialization.response Code=
- ios开发网络请求Domain=com.alamofire.error.serialization.response Code=-1016报错
- 使用AFNetworking出现报错: error=Error Domain=com.alamofire.error.serialization.response Code=-1016 "Reque
- AFNetWorking Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: una
- AFNetworking报错:(415 Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: un
- iOS Error Domain=com.alamofire.error.serialization.response Code=-1016
- Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable con
- Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable co
- Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable con
- [原]Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable
- Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: internal server
- Error Domain=com.alamofire.error.serialization.response Code=-1016 "
- Error Domain=com.alamofire.error.serialization.response Code=-1016 "(AFN问题)
- Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable con
- Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: unauthorized (40
- Error Domain=com.alamofire.error.serialization.response Code=-1016 image/jpeg application/octet-stre
- Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptabl
- Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: bad request (400
- c语言中宏记录日志
- oracle 根据更新时间不同查询多条相同数据
- 范数
- 王学岗TextSwitcher的应用
- .properties?什么东东
- iOS AFnetworking post请求 直接post上去一个json格式的数据 报Domain=com.alamofire.error.serialization.response Code=
- hive查询数据导出到本地目录或hdfs的方法
- Sublime Text3 Package Control安装不了
- 【问题】struts2中Action的请求参数获取
- ViewPager嵌套Fragment
- href与action的区别、get与post的区别、什么时候用get、什么时候用post
- Oracle 视图 序列 索引 触发器 定时器
- npm国内被墙的解决方法
- HTML5中常用的标签居中方式