当第一次尝试请求访问令牌时,我得到{“error_description”:“缺少grant_type参数值”、"error":"invalid_request"}。我的代码如下:
let params : [String : String] =
["client_id" : clientID,
"client_secret" : secret,
"redirect_uri" : redirectURL,
"code" : code,
"grantType" : "authorization_code"
]
var request = NSMutableURLRequest(URL: NSURL(string: url)!)
var session = NSURLSession.sharedSession()
request.HTTPMethod = "POST"
var err: NSError?
request.HTTPBody = NSJSONSerialization.dataWithJSONObject(params, options: nil, error: &err)
request.addValue("aapplication/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
request.addValue("\(request.HTTPBody!.length)", forHTTPHeaderField: "Content-Length")有什么问题吗?提前谢谢你。
发布于 2014-10-25 20:47:58
哇,我不想听起来很刺耳,但是这段代码有很多问题。
您没有发送grant_type,但确实发送了grantType。
您正在将post正文编码为application/json,但您将内容类型设置为aapplication/x-www-form-urlencoded,这似乎是application/x-www-form-urlencoded的拼写错误。
因此,两个可能的拼写问题和内容类型不匹配。
确定您是否需要发送应用程序/x-www-表单-urlencoded或应用程序/json。格式化数据并根据需要设置内容类型。
再检查一下所有东西的拼写。
https://stackoverflow.com/questions/26565495
复制相似问题