Magento 2 rest api Потребитель не авторизован для доступа к% ресурсам - PullRequest
0 голосов
/ 19 декабря 2018

Я хочу получить продукты из magento 2, который находится на моем локальном хосте.но когда я положу / отдых / V1 / продукты?это дает мне

<response>
<message>Consumer is not authorized to access %resources</message>
<parameters>
<resources>Magento_Catalog::products</resources>
</parameters>
</response>

Я сделал роли, а также интеграцию.я не знаю, как получить доступ к этим ресурсам.я должен получить эти продукты в моем ионном приложении

1 Ответ

0 голосов
/ 19 декабря 2018

Эта ошибка довольно очевидна - вы не аутентифицировались.

Вот пример того, как пройти аутентификацию с правами администратора и получать продукты с помощью curl;

<code>// Fetch the user auth token
$userData = array("username" => "USER", "password" => "PASS");
$ch = curl_init("http://DOMAINNAME.com/index.php/rest/V1/integration/admin/token");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($userData));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json", "Content-Lenght: " . strlen(json_encode($userData))));

$token = curl_exec($ch);

// Now use the token to get all products
$ch = curl_init("http://DOMAINNAME.com/index.php/rest/default/V1/products?searchCriteria");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json", "Authorization: Bearer " . json_decode($token)));

// Here are the results
$result = curl_exec($ch);

$result = json_decode($result, 1);
echo '<pre>';
print_r($result);
echo '
';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...