Неверный ключ API как ответ метода PUT с использованием кодового средства RESTServer

Я использую библиотеку API сервера codeigniter rest.

Когда я вхожу HTTP: // локальный / RESTapi / API / вопрос X-API-KEY = XXX в Почтальоне с методом PUT
Я собираюсь:
{
«статус»: ложь,
«error»: «Неверный ключ API»}

Работает нормально с методом GET
Как я могу исправить эту проблему?

2

Решение

Я видел некоторые API, которые не смотрят на параметры GET, если вы делаете запрос POST или PUT для учетных данных или не согласны с тем, как они это делают.

Действительно, учетные данные должны идти в заголовках либо через заголовок Authorize, либо через пользовательский по многим причинам, таким как «не регистрировать учетные данные для доступа к журналам», но я отступаю.

В этом случае вы можете попробовать:

  • Положите (без каламбура) X-API-KEY=XXX внутри тела PUT просто чтобы увидеть, работает ли это
  • Посмотрите, если / как библиотека принимает ключ API в заголовке

Глядя на эту библиотеку в частности (https://github.com/chriskacerguis/codeigniter-restserver), они поддерживают заголовок X-API-KEY, Это должно быть то место, где вы помещаете ключ для ВСЕХ запросов — лучше не передавать их как параметры URL.

Вот пример командной строки, использующий curl из их проекта Github.

 curl -X POST -H "X-API-KEY: some_key_here" http://example.com/books

В PHP вы можете использовать curl для установки заголовка следующим образом:

curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-API-KEY: XXX'));
2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector