ios - NSURLProtocol和Swift-iOS7中的错误

原文 标签 ios ios7 swift nsurlprotocol

我尝试按照以下教程中的说明实施NSURLProtocol:http://www.raywenderlich.com/76735/using-nsurlprotocol-swift

一切都可以在iOS8上正常运行,但是在iOS7中,我在startLoading()中遇到运行时错误。

override func startLoading() {
    var newRequest = self.request.copy() as NSMutableURLRequest //<- this line fails
    NSURLProtocol.setProperty(true, forKey: "MyURLProtocolHandledKey", inRequest: newRequest)

    self.connection = NSURLConnection(request: newRequest, delegate: self)
}


错误:WebCore:CFNetwork加载程序(10):EXC_BREAKPOINT

是否有人成功实现了NSURLProtocol?谢谢!

最佳答案

您的问题是,(非可变)NSURLRequest的副本是另一个非可变NSURLRequest,因此无法将其强制转换为NSMutableURLRequest。尝试:

var newRequest = self.request.mutableCopy() as NSMutableURLRequest // mutableCopy() instead of copy()


这应该为您提供了原始请求的可变副本,该副本应该很好。

关于ios - NSURLProtocol和Swift-iOS7中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26175807/

相关文章:

ios - dealloc 还会被调用吗?

具有动态数据崩溃的 SwiftUI 分层选择器

ios - 核心数据-在Objective-C项目Xcode 8中子类化NSManagedObject的正确方法

ios - ImageView 未显示,但选择正常

objective-c - 拆除UIViewController时是否总是调用viewDidUnload和dealloc吗?

ios - 从另一个 Controller 调用函数后,webview 变为 nil

ios - 将 Swift 添加到 Objective-C 项目编译错误

ios - 导致 "File Not Found"错误的弱链接框架

ios - 了解iOS应用程序打包了哪些库

ios - 更新到iOS SDK 8.0后应用崩溃