用微博获取access_token,出现21323错误
程序员文章站
2022-05-06 08:11:04
...
问题解决了。。。我把?去掉就可以了。。
用的以下方法提交了,xxx都对应好了。不太清楚为什么返回21323。
https://api.weibo.com/oauth2/access_token?client_id=xxxxxx&client_secret=xxxxx&grant_type=authorization_code&redirect_uri=xxxxx&code=xxxxx
这个是使用的提交函数,网上用的现成的。
public function https_request($url, $data = null)
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
if (!empty($data)){
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
}
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($curl);
curl_close($curl);
return $output;
}
回复内容:
问题解决了。。。我把?去掉就可以了。。
用的以下方法提交了,xxx都对应好了。不太清楚为什么返回21323。
https://api.weibo.com/oauth2/access_token?client_id=xxxxxx&client_secret=xxxxx&grant_type=authorization_code&redirect_uri=xxxxx&code=xxxxx
这个是使用的提交函数,网上用的现成的。
public function https_request($url, $data = null)
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
if (!empty($data)){
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
}
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($curl);
curl_close($curl);
return $output;
}
参照微博开放平台的文档,21323表示请求不合法,是不是你没有对redirect_uri参数做编码呀
类似encodeComponent(http://myserver.com/cb)