我需要从 Web 端点获取数据。我将在下面添加说明。我错误地传递了 X-ACCESS-KEY,因为当我运行代码时收到密钥无效或 bin 不属于我的帐户的错误。如何正确地将密钥传递给请求然后解码响应?
我们在以下网址托管了一个 JSON 文件:https://api.jsonbin.io/v3/b/646bed328e4aa6225ea22a79。您的工作是编写一个脚本来下载 URL 的内容(提示:X-ACCESS-KEY 是 $2b$10$Ke1iwieFO7/7qsSKU.GYU.oYXZMW1EeHrwd4xx9ylboJik5mstZk6)按每个元素对数据进行排序 'bar' 键过滤掉其中的元素'baz' 不能被 3 整除 连接每个元素 'foo' 值
let url = URL(string: "https://api.jsonbin.io/v3/b/646bed328e4aa6225ea22a79")!
let key = "$2b$10$Ke1iwieFO7/7qsSKU.GYU.oYXZMW1EeHrwd4xx9ylboJik5mstZk6)"
var request = URLRequest(url: url)
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.addValue("Bearer \(key)", forHTTPHeaderField: "X-Master-Key")
var jsonData: Data?
let task = URLSession.shared.dataTask(with: request) { (data, _, err) in
if let error = err {
print("Error: \(error)")
} else if let data = data {
jsonData = data
processData()
}
}
task.resume()
func processData(){
if let jsonData = jsonData,
let jsonObject = try? JSONSerialization.jsonObject(with: jsonData, options: []) as? [String: Any], let records = jsonObject["records"] as? [[String: Any]] {
}
}
三个问题:
Joakim 正确地指出,您必须仅指定键而不带前导
Bearer
。提示明确表明
X-Access-Key
不是X-Master-Key
末尾的右括号不是标记的一部分。
您好,我不认为错误来自您的密钥名称,因为 API 提到您可以同时使用 X-ACCESS-KEY 或 X-Master-Key