Я впервые использую axios, и я столкнулся с ошибкой.

  axios.get(
    `http://someurl.com/page1?param1=1&param2=${param2_id}`
  )
  .then(function(response) {
    alert();
  })
  .catch(function(error) {
    console.log(error);
  });

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

Ошибка: ошибка сети Трассировки стека: createError @ http: // localhost: 3000 / static / js / bundle.js: 2188 : 15 handleError @ http: // localhost: 3000 / static / js / bundle.js: 1717 : 14

20
Mirakurun 31 Авг 2017 в 14:16

3 ответа

Лучший ответ

Если создание API с использованием NodeJS


// This should already be declared in your API file
var app = express();

// ADD THIS
var cors = require('cors');
app.use(cors());

Для более полного понимания CORS ознакомьтесь с Документацией Mozilla для CORS. ,

15
jacobhobson 16 Ноя 2017 в 18:04

Моя проблема была о URL, который я просил. Я не вставил http:// в начале моего URL. Я имею в виду, что я запрашивал URL-адрес типа 92.920.920.920/api/Token вместо http://92.920.920.920/api/Token. добавление http:// решило мою проблему.

2
Mahdieh Shavandi 30 Апр 2019 в 10:57

В дополнение к ответу @jacobhobson я также использовал некоторые параметры, чтобы он работал.

app.use(cors({origin: true, credentials: true}));
0
Tiago Barroso 28 Ноя 2019 в 13:13