Ios 网站未完全下载-使用stringWithContentsOfURL:
我试图下载一个网站,但只得到整个网站的四分之一Ios 网站未完全下载-使用stringWithContentsOfURL:,ios,nsstring,nsurlconnection,Ios,Nsstring,Nsurlconnection,我试图下载一个网站,但只得到整个网站的四分之一 NSString *tagiString = @"http://www.tagesanzeiger.ch"; NSURL *tagiURL = [NSURL URLWithString:tagiString]; NSError *error; NSString *text =[NSString stringWithContentsOfURL:tagiURL
NSString *tagiString = @"http://www.tagesanzeiger.ch";
NSURL *tagiURL = [NSURL URLWithString:tagiString];
NSError *error;
NSString *text =[NSString stringWithContentsOfURL:tagiURL
encoding:NSASCIIStringEncoding
error:&error];
我没有收到任何表明下载未完成的错误。
有什么想法吗?我不建议为此使用
stringWithContentsOfURL
。相反,您应该使用iOS内置的网络类,这些类可以更好地控制下载操作。例如,使用stringWithContentsOfURL
时,您无法调整或设置超时,这意味着在连接速度较慢的情况下,您的下载可能很容易失败(这可能就是这里发生的情况)
默认情况下,stringWithContentsOfURL
也不是异步的,因此除非您在辅助线程上运行该代码,否则您将停止UI(这是错误的)
这个现有的问题--有一些示例代码向您展示了如何使用更合适的
NSURLConnection
类以字符串形式下载网站。这将使错误处理和调试更加容易。您是否尝试记录文本字符串并检查是否获得所需的html字符串?您能否详细说明您的期望值与获得的值?我检查了您的代码。我能够从url获取所有数据。在控制台中打印文本并检查。我记录了文本字符串,发现它在大约50000个字符处被截断。整个网站大概有近20万个字符。尼桑,你有多少个角色?