2

  我有这个代码:

let primaryCurr = "https://api.independentreserve.com/Public/GetValidPrimaryCurrencyCodes"

guard let url = URL(string: primaryCurr) else { 
    print("Invalid URL: \(primaryCurr)")
    return nil 
}

let task = URLSession.shared.dataTask(with: url) { data, response, error in
    guard error == nil else {
        print(error!)
        return
    }
    guard let data = data else {
        print("Data is empty")
        return
    }

    let json = try! JSONSerialization.jsonObject(with: data, options: [])
        print("JSON: ", json)
    }

    task.resume()
}

 

消息区域得到这个:

0x608000162580]: 10:-72000 Err(-65563) 2017-11-21 22:42:01.929003+1000 AltcoinTrader[36412:12415423] 任务 <209F1681-53BB-4E9D-A553-E349AE087159> 加载失败(<<<错误代码:-1003 [10:-72000]) 2017-11-21 22:42:01.929234+1000 AltcoinTrader[36412:12415423] 任务 <209F1681-53BB-4E9D-A553-E349AE087159>.<1> 以错误结束 -代码:-1003 错误域=NSURLErrorDomain 代码=-1003 “找不到具有指定主机名的服务器。” UserInfo={NSUnderlyingError=0x604000046720 {错误域=kCFErrorDomainCFNetwork Code=-1003 "(null)" UserInfo={_kCFStreamErrorCodeKey=-72000, _kCFStreamErrorDomainKey=10}}, NSErrorFailingURLStringKey= 1> HTTP 加载失败(错误代码:-1003 [10:-72000])2017-11-21 22:42:01.929234+1000 AltcoinTrader[36412:12415423] 任务 <209F1681-53BB-4E9D-A553-E349AE087159>。< 1> 以错误结束 - 代码:-1003 错误域 = NSURLErrorDomain 代码 = -1003 “找不到具有指定主机名的服务器。” UserInfo={NSUnderlyingError=0x604000046720 {错误域=kCFErrorDomainCFNetwork Code=-1003 "(null)" UserInfo={_kCFStreamErrorCodeKey=-72000, _kCFStreamErrorDomainKey=10}}, NSErrorFailingURLStringKey= 1> HTTP 加载失败(错误代码:-1003 [10:-72000])2017-11-21 22:42:01.929234+1000 AltcoinTrader[36412:12415423] 任务 <209F1681-53BB-4E9D-A553-E349AE087159>。< 1> 以错误结束 - 代码:-1003 错误域 = NSURLErrorDomain 代码 = -1003 “找不到具有指定主机名的服务器。” UserInfo={NSUnderlyingError=0x604000046720 {错误域=kCFErrorDomainCFNetwork Code=-1003 "(null)" UserInfo={_kCFStreamErrorCodeKey=-72000, _kCFStreamErrorDomainKey=10}}, NSErrorFailingURLStringKey=https://api.independentreserve.com/Public/GetValidPrimaryCurrencyCodes/ , NSErrorFailingURLKey= https://api.independentreserve.com/Public/GetValidPrimaryCurrencyCodes/ , _kCFStreamErrorDomainKey=10, _kCFStreamErrorCodeKey=-72000, NSLocalizedDescription=指定主机名的服务器可以找不到。}

   

-1003 代码可能是更相关的代码。我在尝试 String(contentsOf: url) 时得到了这一点,我知道该 URL 是有效的,因为我可以将其粘贴到浏览器中并取回正确的 JSON 字符串。我在这里做错了什么?我在最新的 macOS 10.13.1 上用 Xcode 9.1 做我的第一个 mac 应用程序。  

问候

标记

4

1 回答 1

11

我通过更改沙盒中的权限来解决此问题。

具体来说,在项目导航器中,我选择了项目,然后在主窗口中选择了应用程序,然后是功能选项卡。应用沙盒已打开,但所有项目均未选中。我打开了两个网络(传入和传出)。

然后它起作用了

我通过谷歌搜索并最终看到了这个页面: https ://developer.apple.com/library/content/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/EnablingAppSandbox.html#//apple_ref/doc/uid/TP40011195- CH4-SW9

于 2017-11-22T02:49:25.640 回答