Я хочу использовать API данных Youtube для лайка комментариев. Когда я пытаюсь понравиться комментарий от себя, он работает без каких-либо проблем, но когда я пытаюсь понравиться комментарий от кого-то еще, я получаю ошибку.
"reason": "invalidCommentMetadata",
"message": "The request metadata is invalid.",
Я использую Google API PHP Client.
Это код, который я использую для обновления, как:
$videoComments = $youtube->comments->listComments('snippet', array(
'id' => $comment->id
));
$videoComments[0]->snippet->viewerRating = 'like';
$videoCommentUpdateResponse = $youtube->comments->update('snippet', $videoComments[0]);
Я считаю, что это способ сделать это, потому что когда я смотрю на документы, единственное, что я могу найти, что влияет на подобное, это `viewerRating.
https://developers.google.com/youtube/v3/docs/comments#properties
snippet.viewerRating string
Рейтинг, который зритель дал этому
комментарий. Обратите внимание, что это свойство в настоящее время не идентифицирует неприязнь
рейтинги, хотя это поведение может быть изменено. В это время,
значение свойства такое, как если бы зритель оценил комментарий
положительно.Значение равно none во всех других случаях, включая пользователя, давшего
комментарий отрицательный рейтинг или не оценив рейтинг.Допустимые значения для этого свойства:
— лайк
— никто
Я не знаю, делаю ли я что-то не так, или это вообще возможно. Я надеюсь, что кто-то может помочь мне здесь.
Я думаю, что можно сделать вывод, что эта функция не существует по следующим причинам:
В остальной тщательной документации API не упоминается эта функция. Я очень сомневаюсь, что YouTube / Google забудет документировать функцию.
Этот вопрос был задан несколько раз до этого на SO; все из которых не имеют принятого ответа (1, 2, 3). С самым старым вопросом, которому 10 месяцев, очень маловероятно, что никто не нашел бы эту функцию, если бы она существовала.
Youtube — распространенная цель для ботов-избирателей, поэтому имеет смысл не предлагать точку входа API в качестве первой линии защиты.
Официальное приложение Youtube (android) не предлагает опцию комментариев-голосов, а только варианты флагов и ответов. Если бы существовала функция комментирования, вы бы подумали, что YouTube покажет ее в своем приложении.
Других решений пока нет …