Я создаю клиент веб-сервиса REST в PHP, и в данный момент я использую завихрение для выполнения запросов к сервису.
Как я использую завихрение для создания аутентифицируемым (http основной) запросы? Я должен добавить заголовки сам?
Вы хотите это:
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);
Zend имеет клиент отдыха и zend_http_client, и я уверен, что груша имеет какой-то обертку. Но достаточно легко сделать самостоятельно.
Итак, весь запрос может выглядеть что-то подобное:
$ch = curl_init($host);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/xml', $additionalHeaders));
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payloadName);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$return = curl_exec($ch);
curl_close($ch);
Yahoo имеет учебное пособие по созданию звонков на их службы отдыха с использованием PHP:
Сделать Yahoo! Веб-сервис Остальные звонки с PHP
Я не использовал его сам, но Yahoo Yahoo и должен гарантировать, по крайней мере, на некотором уровне качества. Они, кажется, не покрывают положить и удалять запросы.
Также пользователь предоставил заметки для Curl_Exec () , а другие содержат много хорошей информации.
В отличие от мыла, REST не является стандартизированным протоколом, поэтому немного сложно иметь «клиент отдыха». Тем не менее, поскольку самые спокойные услуги используют HTTP в качестве основного протокола, вы должны быть в состоянии использовать любую библиотеку HTTP. В дополнение к завиту, PHP имеет это через грушу:
, который заменил
образец того, как они делают HTTP Basic Auth
// This will set credentials for basic auth
$request = new HTTP_Request2('http://user:password@www.example.com/secret/');
а также поддержка VACEST AUTH
// This will set credentials for Digest auth
$request->setAuth('user', 'password', HTTP_Request2::AUTH_DIGEST);