Я хочу использовать API данных Youtube для комментариев. Когда я пытаюсь получить комментарий от себя, он работает без каких-либо проблем, но когда я пытаюсь получить комментарий от кого-то другого, я получаю сообщение об ошибке.
"reason": "invalidCommentMetadata", "message": "The request metadata is invalid.",
Я использую клиент PHP API Google.
Это код, который я использую для обновления:
$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 Рейтинг, предоставленный зрителем этому комментарию. Обратите внимание, что это свойство в настоящее время не идентифицирует рейтинги неприязни, хотя это поведение может быть изменено. В то же время значение свойства похоже на то, что зритель оценил комментарий положительно.
Значение равно ни одному из всех других случаев, в том числе пользователю, предоставившему комментарий отрицательному рейтингу или не оценив комментарий.
Допустимыми значениями для этого свойства являются: – like – none
Я не знаю, делаю ли я что-то не так, или если это возможно. Надеюсь, кто-то может помочь мне здесь.
Я думаю, что безопасно заключить, что эта функция не существует по следующим причинам:
В противном случае полная документация API не упоминает об этой функции. Я очень сомневаюсь, что youtube / google забудут записать функцию. Этот вопрос задавался несколько раз до этого на SO; все из которых не имеют принятого ответа (1, 2, 3). Поскольку самый старый вопрос – 10 месяцев, маловероятно, что никто не нашел бы эту функцию, если бы она существовала. Youtube является общей целью избирателей-ботов, и, следовательно, имеет смысл не предлагать входную точку API как первую линию обороны. Официальное приложение Youtube (android) не предлагает опции comment-upvote, а только опции флажка и ответа. Если бы существовала функция comment-upvote, вы бы подумали, что Youtube отобразит ее в своем приложении.