Alamofire 库未响应 Swift 包管理器
Alamofire library not responding with Swift Package Manager
我是 Swift 包管理器的新手,我正在创建一个可执行文件,我需要在其中使用 REST API,因为我正在使用 Alamofire,这就是我的方式将它添加到我的包文件中
let package = Package(
name: "CreateMenuTool",
dependencies: [
.Package(url: "https://github.com/Alamofire/Alamofire.git", majorVersion: 4)
])
现在当我创建一个请求时,我没有得到任何响应。然而,当我在我的 XCode 项目中使用它时,这个方法回应了我。
Alamofire.request(urlString, method: .post, parameters: requestParams, encoding: JSONEncoding.default, headers: ["X-Key" : webKey]).responseJSON { response in
print(response)
}
当我调试它时,我发现它永远不会进入方法内部,这意味着我既没有收到任何错误也没有收到任何响应。请让我知道我做错了什么?
Alamofire 使用异步请求。如果您不创建 RunLoop,您的代码将在响应从服务器到达之前很久就退出。在脚本结束之前,添加以下行:
RunLoop.main.run()
这将启动主 RunLoop。您还可以将参数传递给 run
以使其 运行 持续指定的时间:
RunLoop.main.run(until: Date(timeIntervalSinceNow: 10))
我是 Swift 包管理器的新手,我正在创建一个可执行文件,我需要在其中使用 REST API,因为我正在使用 Alamofire,这就是我的方式将它添加到我的包文件中
let package = Package(
name: "CreateMenuTool",
dependencies: [
.Package(url: "https://github.com/Alamofire/Alamofire.git", majorVersion: 4)
])
现在当我创建一个请求时,我没有得到任何响应。然而,当我在我的 XCode 项目中使用它时,这个方法回应了我。
Alamofire.request(urlString, method: .post, parameters: requestParams, encoding: JSONEncoding.default, headers: ["X-Key" : webKey]).responseJSON { response in
print(response)
}
当我调试它时,我发现它永远不会进入方法内部,这意味着我既没有收到任何错误也没有收到任何响应。请让我知道我做错了什么?
Alamofire 使用异步请求。如果您不创建 RunLoop,您的代码将在响应从服务器到达之前很久就退出。在脚本结束之前,添加以下行:
RunLoop.main.run()
这将启动主 RunLoop。您还可以将参数传递给 run
以使其 运行 持续指定的时间:
RunLoop.main.run(until: Date(timeIntervalSinceNow: 10))