Разрешить заголовок запроса, хранящийся в Access-Control-Allow-Header в ответе перед полетом - PullRequest
0 голосов
/ 09 мая 2018

Я пытаюсь Axios вызвать внешний домен: https://viacep.com.br/ws/20021040/json/ (позвоните, чтобы получить любую информацию о почтовом индексе)

axios.get('https://viacep.com.br/ws/20021040/json')
              .then((response) => {
                alert(JSON.stringify(response))
              })
              .catch((error) => {
                alert(error)
              })

В интерфейсе я использую:

  • axios: v0.17.1
  • vue: v2.5.3
  • веб-пакет: 3.6.0

В back-end я использую expressjs / nodejs и устанавливаю экспресс-cors для решения этого случая.

  • узел 9.8.0
  • Экспресс 4.15.2
  • Cors 2.8.4

Мне нужно выяснить, как разрешить работу авторизации поля заголовка запроса в Access-Control_allow-Headers при предполетном ответе на него.

Я развиваюсь на своем локальном хосте: 8021

Авторизация - это токен с учетными данными моей аутентификации (JWT).

На изображении ниже прокомментированы любые тесты.

enter image description here

С наилучшими пожеланиями.

Мой последний тест:

var corsOptions = {
    origin: true,
    allowedHeaders: ['Content-Type', 'authorization', 'Content-Length', 'X-Requested-With', 'Accept'],
    exposedHeaders: ['authorization'],
    methods: ['GET', 'PUT', 'POST', 'DELETE', 'OPTIONS'],
    // optionsSuccessStatus: 204, // some legacy browsers (IE11, various SmartTVs) choke on 204
    preflightContinue: false
}
app.use(cors(corsOptions))

Но это все равно не работает ... = (

1 Ответ

0 голосов
/ 09 мая 2018

Попробуйте:

res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept')
res.header('Access-Control-Allow-Methods', 'GET, PUT, POST, DELETE, PATCH, OPTIONS');
...