8
Tôi đang cố truy xuất mã thông báo OAuth để sử dụng API Fusion của Yelp từ ứng dụng iOS bằng cách sử dụng URL gốc và các lớp URLRequest, nhưng nó cho tôi lỗi này trong "tokenInfo" biến:Khôi phục mã thông báo OAuth của Yelp của iOS với URLRequest trả lại "thông số client_id hoặc client_secret không tìm thấy
client_id or client_secret parameters not found. Make sure to provide
client_id and client_secret in the body with the
application/x-www-form-urlencoded content-type
đây là mã của tôi:
func getToken(){
var yelpTokenEndpoint = "https://api.yelp.com/oauth2/token"
var tokenURL = URL(string: yelpTokenEndpoint)
let requestJSON: [String:String] = ["client_id":"Not showing actual client id", "client_secret":"Not Gonna Show My Actual Client Secret either","grant_type":"client_credentials"]
let requestData = try? JSONSerialization.data(withJSONObject: requestJSON)
print(try? JSONSerialization.jsonObject(with: requestData!, options: []))
var tokenURLRequest = URLRequest(url: tokenURL!)
tokenURLRequest.httpMethod = "POST"
tokenURLRequest.httpBody = requestData!
tokenURLRequest.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "content-type")
let tokenSession = URLSession.shared
let tokenTask = tokenSession.dataTask(with: tokenURLRequest) { (data, response, error) in
if error != nil {
print("error getting your access token")
print(error!.localizedDescription)
}
if let data = data{
do{
if let tokenInfo = try JSONSerialization.jsonObject(with: data, options: []) as? [String:Any]{
let token: String = tokenInfo["access_token"] as! String
print(token)
}
} catch {
print("Error converting to JSON")
}
}
}
tokenTask.resume()
}
Và vâng, tôi chắc chắn rằng tôi đặt các thông tin khách hàng ngay trong Bất kỳ trợ giúp sẽ được nhiều đánh giá cao, cảm ơn.!