Я уже несколько дней пытаюсь создать реагирующее веб-приложение для моей стажировки, и я столкнулся с ошибкой CORS. Я использую последнюю версию activJS и помещаю ее в create-react-app
, а ниже приведен код для извлечения:
componentDidMount() {
fetch('--------------------------------------------',{
method: "GET",
headers: {
"access-control-allow-origin" : "*",
"Content-type": "application/json; charset=UTF-8"
}})
.then(results => results.json())
.then(info => {
const results = info.data.map(x => {
return {
id: x.id,
slug: x.slug,
name: x.name,
address_1: x.address_1,
address_2: x.address_2,
city: x.city,
state: x.state,
postal_code: x.postal_code,
country_code: x.country_code,
phone_number: x.phone_number,
}
})
this.setState({warehouses: results, lastPage: info.last_page});
})
.then(console.log(this.state.warehouses))
}
Извините, что я не могу опубликовать URL для API из-за правил компании, однако подтверждается, что в серверной части API нет настройки CORS.
Тем не менее, я сталкиваюсь со следующими ошибками при запуске на Mozilla
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at ------------------. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).
и
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at ---------------------------------------------. (Reason: CORS request did not succeed).
При запуске на Chrome выдает следующую ошибку
Failed to load resource: the server responded with a status of 405 (Method Not Allowed)
и
Failed to load --------------------------------------------------------: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. The response had HTTP status code 405. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
и
Uncaught (in promise) TypeError: Failed to fetch
Другое дело, что я могу открывать URL в своих браузерах без проблем или чего-либо еще.
Пожалуйста, помогите и спасибо!
Дополнительная информация
Причина, по которой я добавил настройку CORS, заключается в том, что она выдает ошибку CORS, поэтому ее удаление не решит проблему.
Далее я попытался выполнить настройку прокси, однако теперь он выдает
Unhandled Rejection (SyntaxError): Unexpected token < in JSON at position 0
Согласно Интернету, это вызвано тем, что ответ не является JSON. Однако, когда я проверил API, он дает это
api img
что означает, что тип возвращаемого значения должен быть в формате JSON?
Дополнительная информация
проверка ответа даст это
{ "статус": 200, "общее": 1, "per_page": 3, "current_page": 1, "LAST_PAGE": 1, "next_page_url": нулевой, "prev_page_url": нулевой, "с": 1, "to": 3, "data": [{"id": 1, "slug": "america", "name": "america", "address_1": "Суд США", "address_2": " США " "город": "США", "государство": "США", "postal_code": "94545", "country_code": "США", "phone_number": "10000001", "CREATED_BY": нулевой," updated_by ": null," creation_at ":" 2017-11-10 11: 30: 50 + 00 "," updated_at ":" 2018-06-28 07: 27: 55 + 00 "}]}