#php #javascript #алгоритм #api
Те сервисы, у которых есть открытое API, обязывают регистрироваться, чтобы получить специальный ключ... то есть API Key.. и этот ключ нужно передавать при каждом запросе: site.ru/{api_key}/{method}/... Не понятно, почему они так делают, если я могу, к примеру, взять у кого-нибудь этот ключ, не регистрируясь... так для чего того нужен этот API Key? в чем смысл?
Ответы
Ответ 1
API Key используется как CSRF Token - дабы посылать далеко сразу и без разговоров тех, у кого его нет. Если получил и творишь фигню - можно было бы отозвать. Т. е. средство быстрой модерации. Так же ключи могут выполнять функции Access Token - таким образом, кто-то (сервис, пользователь) может предоставить доступ до тех ресурсов, к которым доступ запрещён (личные сообщения, приватная информация и т. д.), не делая последние публичными. Брать ключ у кого-то, конечно, можно, вот только ответственность за действия будет нести именно владелец ключа (в некоторых сервисах подобное прямо оговаривают). Если действия не владельца ключа будут деструктивными, администрация удалит владельца (а так же, возможно, отзовёт какие-то оплаченные платные услуги, собранная аудитория под старым ключём). Скомпрометированный ключ иногда дают пересоздать (SE API), иногда - только с помощью тех. поддержки.Ответ 2
Обычно API key используется для идентификации сервисом клиента. И по этому ключу сервис определяет какие данные можно отдавать определенному клиенту. Обычно еще используется авторизация и выдается токен, который нужно передоверять при каждом запросе к серверу после авторизации. Владельцы сервиса наверняка не предполагают что вам кто то будет давать свой api_key)
Комментариев нет:
Отправить комментарий