服务端给返回的网页加载不出来,仔细一看,url是空的!!为什么呢。
示例:
NSString *urlStr = @"http://服务器返回带有汉字的url字符串.com"; NSURL *url = [NSURL URLWithString:urlStr]; DLog(@"url = %@", url);
打印结果:
<ViewController.m : -[ViewController viewDidLoad] : 72> url = (null)
结论:当urlStr里面包含了汉字或其他非英文字符时,就会导致创建url异常。
解决方案:
NSURL *url = [NSURL URLWithString:[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
为了项目稳定期间,建议对服务端返回的字符串进行UTF-8转码,以保证app的稳定。
尊重作者劳动成果,转载请注明: 【kingdev】