Swift获取未经授权的请求返回



我使用get请求从predicthq请求数据,由于某种原因,我一直收到{"error": "unauthorized"}的响应作为JSON响应。我已经更改了API好几次了,但是运气不好。我在Postman中尝试过,数据正在返回。。。

这是他们提供的python示例:

response = requests.get(
url="https://api.predicthq.com/v1/events",
headers={
"Authorization": "Bearer $ACCESS_TOKEN",
"Accept": "application/json"
}
)

这是我正在使用的请求,API密钥是100%正确的,因为我已经使用它在他们的网站上提出请求:

let url = URL(string: "https://api.predicthq.com/v1/events")
guard let requestUrl = url else { fatalError() }
// Create URL Request
var request = URLRequest(url: requestUrl)
// Headers
request.addValue("Bearer (token)", forHTTPHeaderField: "Authorization")
request.addValue("application/json", forHTTPHeaderField: "Accept")
// Specify HTTP Method to use
request.httpMethod = "GET"
// Send HTTP Request
let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
// Check if Error took place
if let error = error {
print("Error took place (error)")
return
}
// Read HTTP Response Status code
if let response = response as? HTTPURLResponse {
print("Response HTTP Status code: (response.statusCode)")
}
// Convert HTTP Response Data to a simple String
if let data = data, let dataString = String(data: data, encoding: .utf8) {
print("Response data string:n (dataString)")
}
}
task.resume()

编辑:我也尝试过使用AlamoFire,结果也一样。

let path = "https://api.predicthq.com/v1/events"
let headers: HTTPHeaders = ["Authorization": "Bearer (token)"]

AF.request(path, method: .get, headers: headers)
.responseJSON { (response) in
if let data = response.data, let dataString = String(data: data, encoding: .utf8) {
print("Response data string:n (dataString)")
}
}

好的,问题已经确定。CCD_ 2在最后需要一个CCD_。

最新更新