? 今天使用這個[aURLStringstringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]方法,在IOS9.3系統出問題,發現+總是不能正常轉義,我用的MKNetwokkit,get請求,開始params是空,參數都在[engineoperationWithPath:SERVER_PATHparams:postValueshttpMethod:@"GET"]的第二個參數,開始時發現中文無法請求成功,后來在- (id)initWithURLString:(NSString*)aURLString
params:(NSDictionary*)params
httpMethod:(NSString*)method的方法中加入else{
/********添加**/
NSLog(@"aURLString--->>>>%@",aURLString);
aURLString = [aURLStringstringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"finalURL-->>>>%@",finalURL);
/********郭明月添加結束**/
finalURL = [NSURLURLWithString:aURLString];
}之后基本正常,可后來+號無法正常轉義,發現[aURLStringstringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]這個方法在iOS9下已經不太好用了,還是講參數傳入了params中解決了問題。
或者改為iOS9后推薦的aURLString = [aURLStringstringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSetcharacterSetWithCharactersInString:@"`#%^{}\"[]|\\<>+"].invertedSet];也好。