Вызов API Shopware для ресурса клиента отвечает, что ресурс не найден

Я попытался вызвать клиентский ресурс на моем сервере Shopware, работающем на локальной виртуальной машине, но все, что я получил, - это ответ 404 «Ресурс не найден».

Когда я повторяю URL-адрес, который использует REST-клиент, и вызываю его вручную из своего браузера, он работает нормально, и я получаю JSON нужного клиента.

Я использую REST-клиент из учебника по искусственному интеллекту для магазинов без изменений: https://developers.shopware.com/developers-guide/rest-api/#using-the-rest-api-in-your-own-application

С клиентом все в порядке, я могу использовать его для создания клиентов.

Тем не менее этот код не работает:

$client = new ApiClient($CONF_SW_RESTServerDomain, $CONF_SW_username, $CONF_SW_APIKey);
$customers = $client->get('customers');
if (empty($customers)) { throw new Exception("error, failed to get customers."); }

Ожидаю получить такой результат

$customers = json_decode({"data":[{"number":"20003","id":1,"chang...bleOptinConfirmDate":null}],"total":1,"success":true}, true);

но все, что я получаю, это запускаемая ниже строка исключения.

Я озадачен, есть идеи?


person Yannic Welle    schedule 07.05.2019    source источник
comment
Может быть, на вашей виртуальной машине сетевая конфигурация, вы используете Windows? или линукс? $ CONF_SW_RESTServerDomain это указывает на localhost ?? Я подозреваю, что запрос идет изнутри виртуальной машины, может иметь разные адреса между хостом и виртуальной машиной.   -  person Joaquin Javi    schedule 07.05.2019
comment
@JoaquinJavi благодарит за быстрый ответ. Вы помогли мне найти проблему: $ CONF_SW_RESTServerDomain = 192.168.178.30/api, но необходимо иметь http: //. Теперь работает ... :)   -  person Yannic Welle    schedule 07.05.2019
comment
HTTP: 201 Успех;)   -  person Yannic Welle    schedule 07.05.2019


Ответы (1)


Проблема была в

$CONF_SW_RESTServerDomain = "192.168.178.30/api";

должно быть

$CONF_SW_RESTServerDomain = "http://192.168.178.30/api";

теперь отлично работает :)

person Yannic Welle    schedule 07.05.2019