API YouTube, расширения Chrome, ключ разработчика YouTube и ошибки 403 Forbidden quota

Я создаю расширение для браузера (Chrome/FF/Safari/Opera) для YouTube, используя API YouTube.

Расширение получает все видео пользователей и ищет в каждом из последних комментариев 1000 комментариев к видео (из-за ограничений API). Затем он отображает комментарии, соответствующие определенным критериям. (То есть те, которые содержат ссылки).

Сначала у меня были видео кусками по 100, но из-за того, что я получил 403 запрещенных ответа, превышенных квоты, я сократил это до 50 видео, чего было недостаточно, поэтому снова уменьшил его до 25.

Я также использую javascript setTimeout между каждым видео, чтобы попытаться распространить запросы API. Первоначально это было 2 секунды, но я постоянно увеличивал его, пока не достиг 7 секунд. Это долгое ожидание, очевидно, сделало мою функциональность несколько утомительной для пользователей, хотя я почти готов и больше не получаю 403.

Итак, мои вопросы:

Этого можно ожидать от API?

Что я могу сделать, чтобы улучшить это?

Поможет ли здесь ключ разработчика (или возможно ли использовать его в расширении)?

Что касается ключа разработчика, я посмотрел видео на YouTube API, в котором говорилось, что ключи разработчика уменьшат вероятность превышения квоты ответов. Но я также думаю, что это не то, что можно использовать в расширении. Я не использую свой собственный сервер или веб-сайт для своего расширения.


person Paulie    schedule 12.10.2013    source источник


Ответы (1)


Да, если вы не используете ключ API, вы будете привязаны к квотам IP. Лучше всего использовать ключи API/разработчиков.

У вас нет причин не использовать его. Вы можете просто поместить его в свой код.

Вы можете получить свой ключ здесь: https://cloud.google.com/console#/project

ИСПРАВЛЕНИЕ: URL-адрес ключа разработчика YouTube:

http://code.google.com/apis/youtube/dashboard/

person Ibrahim Ulukaya    schedule 16.10.2013
comment
Спасибо. Но что может помешать другому разработчику получить исходный код (что очень просто в расширениях) и использовать мой ключ разработчика? - person Paulie; 18.10.2013
comment
Я понимаю ваши опасения, но это бесплатный API, поэтому, даже если другой разработчик украдет его, это не даст ему никаких преимуществ. - person Ibrahim Ulukaya; 18.10.2013
comment
Хорошо, спасибо за совет. Наверное, я не понимаю, почему они возятся с ключом, ведь он бесплатный. Мой исходный код открыт, и я знаю как минимум одного человека, который с ним работает. Так что, если они будут бесконечно зацикливать запросы с моим ключом, возможно, YouTube заблокирует запросы из моего собственного приложения. Кроме того, не мог ли YouTube сделать что-то, чтобы защитить это? Скажем, имея какой-то ключ ответа, хранящийся на моем собственном веб-сайте, который API YouTube будет проверять, когда запросы будут сделаны с моим ключом. Но вы правы, API бесплатный и ключ бесплатный, поэтому я просто воспользуюсь им. Спасибо. - person Paulie; 19.10.2013
comment
У вас также есть адрес перенаправления для вашего проекта с настройкой ключа. Таким образом, они не могут использовать ваш ключ. Все, что они пытаются сделать, будет перенаправлено на ваш сайт. - person Ibrahim Ulukaya; 19.10.2013
comment
Эм... Я этого не понимаю. Как именно работает это перенаправление? Не похоже, что мой код находится на моем веб-сайте. Это в расширении. В какой момент он перенаправляет? Меня никогда не перенаправляли на сайт, который я ввел в форме ключа разработки. - person Paulie; 19.10.2013