我在使用新的swift 2.0转换时遇到了一些问题。
我转换了我的应用程序,一切似乎都运行得很好,但是,与Web服务器的连接完全停止了。
原始代码:
let tempstring: String? = "\(urlBase)"
let url = NSURL(string: tempstring!.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!)
var key: NSString?
key = NSString(contentsOfURL: url!, encoding: NSUTF8StringEncoding, error: nil)
临时字符串最终会成为http://www.zephyrpanthur.com/ - 其他变量和子目录
转换确实:
let tempstring: String? = "\(urlBase)"
let url = NSURL(string: tempstring!.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!)
var error: NSError?
var key: NSString?
do {
key = try NSString(contentsOfURL: url!, encoding: NSUTF8StringEncoding)
print(key)
}
catch var error1 as NSError {
error = error1
print(error)
key = nil
}
基本上只添加了一个try / catch,这太棒了。但是,key
始终等于nil
。
我尝试了很多东西,并最终发现如果我加载http://www.google.com它就可以工作并加载网站了。我试过雅虎,Facebook和其他一些不是主要名字的网页,但他们都有效。
当我回到zephyrpanthur.com时,它停止了工作。我甚至尝试过我拥有的其他服务器,比如8bitfox.com,但也没有用。我尝试使用和不使用www.
以及使用和不使用ssl(https / http)
我自己的服务器上的任何内容似乎都被阻止了。这非常奇怪和奇怪。我的iPhone,iPad和模拟器可以很好地加载这些页面,但它们不会加载到我的应用程序中......
代码在游乐场工作,而不是在我的应用程序中。我没有在网络上做任何其他事情,在运行此代码之前,唯一发生的事情是使用本地用户设置进行一些检查,以确定它是否应该自动登录,或者请求用户和传递进入。
错误信息是"无法打开zepyrpanthur.com"或者我失败时使用的任何网站。
我希望这是swift 2.0的问题,而不是我的网络服务器的问题,但谁知道呢。也许ssl现在需要访问?有些网站没有加载过,所以我不知道,有什么想法吗?