我正在尝试使用 Swift 5.5 中的 async / await 进行异步网络调用,但由于某种原因,它在我的 Swift 包中无法按预期工作。
let (data, response) = await URLSession.shared.data(for: request)
上面的代码行在一个快速的操场上工作(这里的请求是一个 URLRequest)但它无法在我的 Swift 包中工作(使用 swift 工具版本 5.5)
起初的错误是:Type of expression is ambiguous without more context
但我意识到它与元组分配有关,所以我将语句更改为:
let data = await URLSession.shared.data(for: request)
它给了我错误:Value of type 'URLSession' has no member 'data'
此外,Xcode 的代码完成在 Swift 包中工作时不会列出 .data(for:) ,而不是在 Playground 中工作。检查下面的屏幕截图以获得更好的理解。