FinderSync扩展HTTP请求失败
问题描述:
目前我正在为我的应用程序使用Swift语言编写FinderSync扩展。我的扩展需要对端口号为40322的本地主机上运行的服务器执行REST调用。基于响应,我将创建上下文菜单项目。对于同样的原因,我写了下面的代码“FinderSync.swift” 文件FinderSync扩展HTTP请求失败
let config = URLSessionConfiguration.default
// Session Configuration
let session = URLSession(configuration: config)
// Load configuration into Session
let request_url = URL(string: "http://127.0.0.1:40322/api/get_rclick_settings_and_check_target")!
let task = session.dataTask(with: request_url, completionHandler: {
(data, response, error) in
if error != nil {
print("TAKS ERROR: \(error!.localizedDescription)")
}
else {
do {
if let json = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as? [String: Any]
{
NSLog("TASK RESPONSE: \(json)")
}
} catch {
NSLog("error in JSONSerialization")
}
}
})
task.resume()
但给错误的 代码 “nw_socket_connect的ConnectX失败:[1]不允许的操作”
但相同的代码输入XCPlayground并添加行运行后操场“XCPSetExecutionShouldContinueIndefinitely(continueIndefinitely:真)”
我的问题是我们是否需要添加“info.plist”应用程序或FinderSync扩展中的任何元素,以允许扩展程序执行REST调用或者是否有任何其他方法来解决此问题?
我遇到同样的问题,连接沙盒当非标准的HTTP端口为localhost,无论沙盘权利(网络客户端,服务器等)的时候。对我来说,这似乎是Sierra 10.12.4中与应用程序传输安全有关的一个错误。很高兴听到您是否找到了解决方案。 –