2

所以我正在为一个想要在他的社交网站上使用一个简单功能的客户编写一个功能,以便用户可以在 Twitch 上关注频道,没有类似的 SDK,我有以下功能:

function twitch_follow_channel($user, $channel, $client_id, $access_token) {

      $ch = curl_init();
            curl_setopt($ch, CURLOPT_PUT, true);
            curl_setopt($ch, CURLOPT_HEADER, true);
            curl_setopt($ch, CURLINFO_HEADER_OUT, true);
            curl_setopt($ch, CURLOPT_URL, 'https://api.twitch.tv/kraken/users/'.$user.'/follows/channels/'.$channel.'?oauth_token='.$access_token);  
            $h = 'Client-ID: '.$client_id.', Accept: application/vnd.twitchtv.v3+json, Authorization: OAuth '. $access_token;
            curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: OAuth '.$access_token,
                                                       'Client-ID: '.$client_id,
                                                       'Content-Length: '.strlen($h), 
                                                       'Accept: application/vnd.twitchtv.v3+json'));    
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0); 
      $r  = curl_exec($ch);
      $ci = curl_getinfo($ch);
      r($ci);
      r($r);
      return json_decode($r, true);       

}

Content-length在 HTTP HEADER 中包含我不知道我缺少什么

笔记

  • 访问令牌具有user_follows_edit范围。
  • r()被用来代替var_dump()
  • 我已经知道 GitHub 上的文档,请仔细遵循
4

1 回答 1

0

最近我自己这样做了,那么您如何添加:

 curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); 

这样你就说 CURL 使用 PUT 作为请求。

要取消关注,只需将 PUT 替换为 DELETE 和您的 gucci。

Atom8tik

于 2014-10-04T19:05:50.807 回答