Я создаю клиент веб-службы REST на PHP и в данный момент использую curl для отправки запросов на службу.
Как я могу использовать curl для выполнения аутентифицированных (базовых http) запросов? Нужно ли добавлять заголовки самостоятельно?
php
rest
curl
basic-authentication
пустой
источник
источник
CURLOPT_USERPWD
в основном отправляет base64user:password
строки с заголовком http, как показано ниже:Таким образом, помимо этого
CURLOPT_USERPWD
вы также можете использоватьHTTP-Request
опцию заголовка, как показано ниже, с другими заголовками:источник
CURLOPT_USERPWD
работал для меня.Самый простой и родной способ - использовать CURL напрямую.
Это работает для меня:
источник
В отличие от SOAP, REST не является стандартизированным протоколом, поэтому иметь «клиента REST» немного сложно. Однако, поскольку большинство служб RESTful используют HTTP в качестве основного протокола, вы должны иметь возможность использовать любую библиотеку HTTP. В дополнение к cURL, PHP имеет их через PEAR:
HTTP_Request2
который заменил
HTTP_Request
Пример того, как они делают HTTP Basic Auth
Также поддерживается Digest Auth
источник
Если тип авторизации - Basic auth, а отправленные данные - json, сделайте вот так
источник
У Yahoo есть руководство по звонкам на их REST-сервисы с использованием PHP:
Сделайте Yahoo! Веб-сервис REST Calls с PHP
Я сам этим не пользовался, но Yahoo - это Yahoo и должна гарантировать хотя бы некоторый уровень качества. Тем не менее, они не покрывают запросы PUT и DELETE.
Кроме того, Пользовательские примечания к curl_exec () и другим содержат много полезной информации.
источник
Вам просто нужно указать параметры CURLOPT_HTTPAUTH и CURLOPT_USERPWD:
Или укажите заголовок:
Пример жрет:
Смотрите https://github.com/andriichuk/php-curl-cookbook#basic-auth
источник
Очень активно поддерживал Майкл Доулинг жрать хороший путь. Помимо элегантного интерфейса, асинхронных вызовов и соответствия PSR, он делает заголовки аутентификации для вызовов REST очень простыми:
Смотрите документы .
источник
Для тех, кто не хочет использовать curl:
источник
Существует несколько сред REST. Я настоятельно рекомендую изучить Slim mini Framework для PHP.
Вот список других.
источник