Два вопроса:
Вопрос 1.
Нам нужно управлять 4 плейлистами пользователя Spotify из нашего back-end (PHP) (без входа пользователя) . Посетители нашего сайта могут подавать несколько своих любимых песен на наши веб-сайты. Исходя из этого, мы создаем и управляем 4 плейлистами, которые содержат «самые популярные песни». Мы хотим автоматизировать этот процесс из нашего PHP-сервера без необходимости ручного управления плейлистом каждый день в течение нескольких месяцев. Мы хотели бы использовать Spotify API для этого, но токен доступа пользователя необходим для доступа к пользовательским плейлистам и управления ими. Мы создали доказательство концепции, которая «имитирует браузер с PHP». Мы входим в систему, извлекаем токен аутентификации, запрашиваем токен доступа с токеном аутентификации и затем выполняем необходимые вызовы API – все без вмешательства пользователя. Этот метод работает, но мы подозреваем и знаем, что это не 100% путь :). Мы не злоупотребляем API или вообще, но как мы можем периодически автоматизировать эти 4 пользовательских плейлиста, если это не так? Обратите внимание, что наш back-end – это Apache – PHP. Мы могли бы также использовать NodeJS, но опять же, это тоже не путь.
Вопрос 2.
Пользователи отправляют песни на наш сайт. Когда пользователь вводит в поле поиска (название песни / имя исполнителя), через одну секунду мы выполняем вызов ajax в Spotify API и показываем результаты поиска на основе ввода. Принимая во внимание количество посетителей, ожидаемых на веб-сайте, это может вызвать большой трафик для API. Документы ( https://developer.spotify.com/web-api/user-guide/#rate-limiting ) не очень понятны в применяемых ограничениях скорости. Можно ли дать нам более четкое представление об этих ограничениях по темпам, поскольку мы хотим, чтобы это не испортило наш сайт ?
Заранее спасибо.
Вопрос 1
Если вы хотите создавать плейлисты в определенной пользовательской библиотеке, вам нужно, чтобы этот пользователь предоставил эти разрешения вашему приложению.
В вашем случае вы должны выполнить поток кода авторизации, чтобы получить токены обновления и доступа.
Храните полученный токен доступа и обновите токен, используйте токен доступа для выполнения запросов и обновите токен доступа, когда он истекает, используя токен обновления.
Если вы собираетесь управлять этими плейлистами у пользователя, которому вы владеете, тогда нет необходимости показывать какую-либо форму для входа в систему пользователям. Войдите в систему один раз и используйте извлеченные токены в скрипте, который будет периодически вносить изменения в плейлисты пользователя.
вопрос 2
В настоящее время лимиты на сайте Spotify Developer не указаны, но они должны иметь возможность обрабатывать ваши поисковые запросы. Если вы хотите быть более безопасным, выполните аутентификацию ваших запросов, поэтому они ограничены основанием client_id. Чтобы получить такой токен, который не содержит информации пользователя, вы можете использовать поток учетных данных клиента .