如何解决Twitch API返回403,带有授权和客户端ID?
我正在尝试从游戏ID中列出活动的Twitch流。
我的代码如下:
$ch = curl_init();
$URL = 'https://api.twitch.tv/helix/streams?game_id=3412';
$X = [
'Authorization: Bearer {Client Secret}','Client-ID: {Client ID}',];
curl_setopt($ch,CURLOPT_URL,$URL);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,true);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,CURLOPT_CUSTOMREQUEST,'GET');
curl_setopt($ch,CURLOPT_HTTPHEADER,$X);
$result = curl_exec($ch);
结果应该是侠盗猎车手III的视频流,但是我得到的响应是这样的:
object(stdClass)[121]
public 'error' => string 'Unauthorized' (length=12)
public 'status' => int 401
public 'message' => string 'Invalid OAuth token' (length=19)
我已经生成了一个新机密,并确认我的客户ID是正确的。我一直在关注此文档:https://dev.twitch.tv/docs/api/reference#get-streams
在这里抓头,之前我已经在旧的API上做到了。我发现许多人都遇到相同的问题,但是无法复制他们的任何解决方案。有人知道吗谢谢。
解决方法
您需要get an authorization token(与客户端机密分开的)用于授权标头。客户端凭据流是三个受支持的后端API调用中最简单的一个,它适合于不代表任何特定用户的后端API调用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。