Ошибка сети / 403 Запрещено по запросу в службу React JS ax ios proxy - PullRequest
0 голосов
/ 10 апреля 2020

Мне нужно создать приложение React, которое отправляет запрос в эту службу https://www.indecon.online/last для приложения Job, и в настоящее время у меня возникает проблема при попытке сделать запрос GET.

Он отлично работает в браузерах или в Postman, но при попытке с топором ios это не та история.

Сначала я попытался сделать простой запрос GET с топором ios примерно так:

enter image description here

и я получил эту ошибку:

Access to XMLHttpRequest at 'https://www.indecon.online/last' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Итак, я попробовал второй раз, на этот раз используя http -proxy-middleware npm пакет (после этого урока: https://levelup.gitconnected.com/overview-of-proxy-server-and-how-we-use-them-in-react-bf67c062b929). Я настроил файл setupProxy. js следующим образом:

enter image description here

И просто изменил функцию asyn c следующим образом:

enter image description here

И теперь я получаю эту ошибку после запроса (вторая - результат console.error () внутри блока catch):

GET http://localhost:3000/last 403 (Forbidden)

ERROR:  Error: Request failed with status code 403
at createError (createError.js:16)
at settle (settle.js:17)
at XMLHttpRequest.handleLoad (xhr.js:61)

Я уже попробовал конфигурацию прокси и запрос ax ios с другой службой publi c и получил успешный ответ.

Я ценю любую помощь!

1 Ответ

1 голос
/ 10 апреля 2020

Я предполагаю, что вы создали приложение с create-реагировать-приложение, поэтому у вас есть пакет. json, который имеет зависимость от реагирующих сценариев и сценарий запуска с использованием реагирующих сценариев. Вы можете удалить пакет http-proxy-middleware из своего проекта и добавить в него запись прокси. json:

{
  "dependencies": {
    "react-scripts": "3.4.1", <-- you should already have this
  },
  "scripts": {
    "start": "react-scripts start", <-- you should already have this
  },
  "proxy": "https://www.indecon.online"
}

Теперь в своем коде реагирования вы можете сделать axios.get('/last')

Начните свой проект с npm или с помощью пряжи.

Если это не сработает, пожалуйста, опубликуйте свою посылку. json в вопросе (не изображение, а копия, вставьте текст, пожалуйста).

Этот ответ также в документации , на которую вы ссылаетесь в своем вопросе.

...