Magento 401 по запросу API после установки заголовков для перекрестного происхождения - PullRequest
1 голос
/ 21 марта 2019

Я пытаюсь вызвать веб-API для продуктов в Magento из приложения React Native. После других вопросов и ответов по обмену стеками я получаю ответ 401. Я знаю, что звонок работает, потому что я могу сделать это через почтальона.

Обновление: так что я не решил, но обнаружил, что если я использую axios, запрос будет работать. Это похоже на проблему с fetch.

.htaccess mod_headers.c settings

Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With"
Header set Access-Control-Allow-Methods "POST, GET, PUT, OPTIONS"

приложение / и т.д. / env.php

'x-frame-options' => 'CROSS-ORIGIN'

Вызов API из React Native

fetch(
      'http://localhost:8888/magento/rest/V1/products?searchCriteria[filter_groups][0][filters][0][field]=name&searchCriteria[filter_groups][0][filters][0][value]=product name',
      {
        method: 'GET',
        headers: {
          'Content-Type': 'application/json',
          Authentication: 'Bearer fwynACCESS_TOKENbal9tfr'
        }
      }
    )
      .then((res) => {
        if (res.status !== 200 && res.status !== 204)
          reject({ message: 'There was an error with the products service' })
        resolve(res.json())
      })
      .catch((err) => reject(err))

Сюда также входит веб-интеграция с именем «Клиенты», в которой все параметры API установлены как доступные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...