【发布时间】:2013-12-02 17:54:03
【问题描述】:
我在使用 NSURL URLWithString 时遇到了非常奇怪的行为。
我正在尝试使用以下代码加载 webview:
/* DOES NOT WORK */ NSURL *targetURL = [NSURL URLWithString:@"http://njs1.example.com:3000/assets/0/2147484153/642/645/77b9430e-bde8-4284-af7d-300b3474eeb9.pdf"];
/* WORKS! */ NSURL *targetURL = [NSURL URLWithString:@"http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIWebView_Class/UIWebView_Class.pdf"];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
[webView loadRequest:request];
[self.view addSubview:webView];
当我尝试加载以下 URL 时,它不起作用:
http://njs1.example.com:3000/assets/0/2147484153/642/645/77b9430e-bde8-4284-af7d-300b3474eeb9.pdf
注意:上面的链接是由服务器根据客户请求生成的。
当我加载以下 URL 时它工作:
http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIWebView_Class/UIWebView_Class.pdf
上面的代码在 iOS 5 和 iOS 6 中运行良好,但在 iOS 7 中却不行。有谁知道为什么会这样?
【问题讨论】:
-
以下错误是相关的:
Error Domain=WebKitErrorDomain Code=102 "Frame load interrupted" UserInfo=0xd798730 {NSErrorFailingURLKey=http://njs1.imaginationplus.com:3000/assets/0/2147484153/642/645/77b9430e-bde8-4284-af7d-300b3474eeb9.pdf, NSErrorFailingURLStringKey=http://njs1.imaginationplus.com:3000/assets/0/2147484153/642/645/77b9430e-bde8-4284-af7d-300b3474eeb9.pdf, NSLocalizedDescription=Frame load interrupted} -
这可能与服务器根据请求生成的 URL 不起作用有关吗?该网址不是文件的直接链接。它是使用 Node.js 在服务器上使用自定义标头生成的。
标签: uiwebview ios7 nsurlrequest