Error Domain=NSURLErrorDomain Code=-1002 "不支持的 URL" UserInfo={NSUnderlyingError=0x17425f4a0 {Error Domain=kCFErrorDomainCFNetwork Code=-1002 "(null)"}, NSErrorFailingURLStringKey=/wuliApi/user/login, NSErrorFailingURLKey=/wuliApi/user/login, NSLocalizedDescription=不支持的 URL}
由于項目提供了兩個測試環境,之前兩個都能正常使用,后來有一個不能用了,項目中使用AFNetworking作為網絡請求框架,報以上錯誤。
網上找了一輪資料,有人說是證書問題,有人說是url編碼格式問題。首先,我用的是HTTP不是HTTPS,排除是證書問題。把URL編碼格式改為utf-8,如下:
#define xBaseUrl @"h?ttp://*****"
NSString *baseUrl = nil;
if (SYSTEM_VERSION <= 9.0) {
baseUrl = [xBaseUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}else{
baseUrl = [xBaseUrl stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet characterSetWithCharactersInString:@"`#%^{}\"[]|\\<>"].invertedSet];
}
這無濟于事。
后來用抓包工具Charles看了下,Content-Type為空:
111.png
而正常的那個不為空:
222.png
問了下后臺,這個是他們由決定的,所以是后臺的鍋。