У меня есть XMPP-сервер openfire.
Также я добавил «плагин rest api» и протестировал его с помощью Chrome Tool «Postman», и он отлично работает.
Запрос:
http://myhost.net:9090/plugins/restapi/v1/users
Заголовок:
Authorization:myPasswort
Результат:
{
"user": [
{
"username": "admin",
"name": "Administrator",
"email": "[email protected]",
"properties": null
},
...
Теперь я хочу использовать результат в моем приложении для композиторов с appgyver.com. Тот же ввод, но всегда результат сервера:
Код ответа: 500. {«error»: «Внутренняя ошибка сервера.»}
Затем я пытаюсь получить запрос с помощью PHP-скрипта:
$url = "myhost.net/plugins/restapi/v1/users";
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'Authorization' => 'myPasswort'
),
);
$context = stream_context_create($options);
var_dump($http_response_header);
echo "\r\n";
$result = file_get_contents($url, false, $context);
var_dump($result);
с результатом: NULL bool (false)
Что я делаю не так?
Спасибо
Попробуйте это с последующим фрагментом php:
<?php
$url = "http://localhost:9090/plugins/restapi/v1/users";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array("Accept application/json", "Authorization: PehtV8mbAm5M5MM0"));
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "GET");
$json_response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
echo $json_response;
curl_close($curl);
?>
Просто измените свой URL и ключ авторизации.
Других решений пока нет …