Ios 如何使用AF2.0处理Parse.com Rest API错误

Ios 如何使用AF2.0处理Parse.com Rest API错误,ios,parse-platform,afnetworking-2,nserror,Ios,Parse Platform,Afnetworking 2,Nserror,我正在处理Parse.com在IOS应用程序中执行登录时收到的错误。我尝试使用错误的密码和正确的用户名登录AFNetworking AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; NSDictionary *parameters = @{my parameters}; [manager POST:@"{login url}" parameters:parameters succes

我正在处理Parse.com在IOS应用程序中执行登录时收到的错误。我尝试使用错误的密码和正确的用户名登录AFNetworking

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSDictionary *parameters = @{my parameters};
[manager POST:@"{login url}" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
    code
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    NSLog(@"Error: %@", error.localizedDescription);  <-- this line gets processed
}];
我知道这意味着密码错误,但它不应该更具描述性吗?如何处理其他错误(如错误请求)?用户难道不应该知道为什么请求失败或是错误的吗

编辑: 这是Parse在我尝试使用错误密码登录时的响应

{
AFNetworkingOperationFailingURLResponseErrorKey = "<NSHTTPURLResponse: 0x15571820> { URL: https://api.parse.com/1/login?password=pqpqpq&username=lalala%20namaku%20panjang%20sekali%20lhoooooooooooo } { status code: 404, headers {\n    \"Access-Control-Allow-Origin\" = \"*\";\n    \"Access-Control-Request-Method\" = \"*\";\n    Connection = \"keep-alive\";\n    \"Content-Encoding\" = gzip;\n    \"Content-Length\" = 68;\n    \"Content-Type\" = \"application/json; charset=utf-8\";\n    Date = \"Wed, 16 Jul 2014 05:49:49 GMT\";\n    Server = \"nginx/1.4.4\";\n    \"X-Parse-Platform\" = G1;\n    \"X-Runtime\" = \"0.113695\";\n} }";
NSErrorFailingURLKey = "https://api.parse.com/1/login?password=pqpqpq&username=lalala%20namaku%20panjang%20sekali%20lhoooooooooooo";
NSLocalizedDescription = "Request failed: not found (404)";
}
{
AFNetworkingOperationFailingURLResponseErrorKey=“{URL:https://api.parse.com/1/login?password=pqpqpq&username=lalala%20namaku%20panjang%20sekali%20lhoooooooooooo }{状态代码:404,标题{\n\“访问控制允许来源\”=\“*\”;\n\“访问控制请求方法\”=\“*\”;\n连接\“保持活动状态\”;\n\”内容编码\“=gzip;\n \“内容长度\”=68;\n \“内容类型\”=“应用程序/json;字符集=utf-8\”;\n日期=“Wed,Jul 16 2014 05:49:49 GMT\”;\n服务器=“nginx/1.4.4\”;\n \“X-Parse-Platform\”=G1;\n \“X-Runtime \”=“0.113695\;\n}”;
NSErrorFailingURLKey=”https://api.parse.com/1/login?password=pqpqpq&username=lalala%20namaku%20panjang%20sekali%20lhoooooooooooo";
NSLocalizedDescription=“请求失败:未找到(404)”;
}

我怎么知道这意味着找不到与用户名和密码匹配的用户对象,或者找不到URL()。

即使返回的是http代码404,主体还是以json格式设置,如 {“代码”:101,“错误”:“无效登录参数”}

(此处举例列出了这些值)。因为代码没有列出确切的url以及如何设置标题,所以很难判断出什么是错误的 在这里,否则。 您可以转到并查看CURL的代码示例,该示例将告诉您如何调用登录url,它通常会以JSON错误描述进行响应


此外,您还可以检查如何从HTTP 404中获取正文,从

为什么不使用本机iOS SDK,在这里您不关心AFNetworking,也不关心如何正确地构造和解码url,因为这是为您完成的?它可以通过cocoapods很容易地安装…它不能回答我的问题。如何处理Parse.com提供的不明确错误代码?我的意思是,404可能意味着找不到正确的url?我编辑我的问题。我记录用户信息并得到相应的信息。
{
AFNetworkingOperationFailingURLResponseErrorKey = "<NSHTTPURLResponse: 0x15571820> { URL: https://api.parse.com/1/login?password=pqpqpq&username=lalala%20namaku%20panjang%20sekali%20lhoooooooooooo } { status code: 404, headers {\n    \"Access-Control-Allow-Origin\" = \"*\";\n    \"Access-Control-Request-Method\" = \"*\";\n    Connection = \"keep-alive\";\n    \"Content-Encoding\" = gzip;\n    \"Content-Length\" = 68;\n    \"Content-Type\" = \"application/json; charset=utf-8\";\n    Date = \"Wed, 16 Jul 2014 05:49:49 GMT\";\n    Server = \"nginx/1.4.4\";\n    \"X-Parse-Platform\" = G1;\n    \"X-Runtime\" = \"0.113695\";\n} }";
NSErrorFailingURLKey = "https://api.parse.com/1/login?password=pqpqpq&username=lalala%20namaku%20panjang%20sekali%20lhoooooooooooo";
NSLocalizedDescription = "Request failed: not found (404)";
}