Twitch API — следуйте за пользователем, получая & quot; 411 требуемая длина & quot; ошибка

Поэтому я пишу функцию для клиента, который хочет использовать простую функцию на своем социальном сайте, чтобы пользователи могли следить за каналом на 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 я не знаю, что мне не хватает

Заметки

  • Токен доступа имеет user_follows_edit объем.
  • r() используется вместо var_dump()
  • Я уже осведомлен о DOCs на GitHub, внимательно следил за этим

2

Решение

Недавно сделал это сам, так как насчет вас добавить:

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

Таким образом, вы говорите CURL, чтобы использовать PUT в качестве запроса.

Чтобы отписаться, просто замените PUT на DELETE и ваш gucci.

Atom8tik

0

Другие решения

Других решений пока нет …