我正在尝试加载重定向的 URL。它在 Mac OS 上运行良好,但是当我使用 Kitura 1.4 服务器 Swift 3.0.2 将它推送到 Bluemix 时,我收到以下加载错误:
The operation could not be completed
这是我的相关代码:
…
let gShort = URL(string: "https://blabla.bl/blabla")! // Because SO don't want shortened urls in the example
var request = URLRequest(url: gShort, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 3)
request.httpMethod = "HEAD"
let dataTask = URLSession(configuration: URLSessionConfiguration.default)
.dataTask(with: request, completionHandler: { data, loadResponse, error in
guard let redirected = loadResponse?.url else {
…
}
})
dataTask.resume()
我实际上并不关心响应;我只想要重定向的 URL。这就是我执行“HEAD”的原因,但“GET”具有相同的行为,即在 Mac OS 上运行良好,但在 Bluemix 上运行不正常。
我还没有想出解决方法。我不知道这是否是 Swift / Foundation 或 Kitura 中的错误,或者 Bluemix 是否阻止了重定向的 url。
有谁知道如何解决这个问题?