Как сделать кросдоменный запрос с Authorization?

426
27 апреля 2017, 15:40

запущенны 2 nodeJS сервера, с одного делаю ajax-запрос ко второму:

fetch('http://localhost:3030/data.json', {  
    method: 'get',              
    headers: {
        "Content-type": "application/json",
        "Accept": "application/json",
        "Authorization": "Bearer abc"
    }
})
.then( (response)=>response.json() )
.then(function (data) {  
    console.log('Request succeeded with JSON response', data);  
})  
.catch(function (error) {  
    console.log('Request failed', error);  
});

изза Authorization браузер должен сделать 2 запроса OPTIONS и GET

но на OPTIONS возвращается:

Fetch API cannot load http://localhost:3030/data.json. Request header field authorization is not allowed by Access-Control-Allow-Headers in preflight response.

General: 
Request URL:http://localhost:3030/data.json 
Request Method:OPTIONS 
Status Code:200 OK 
Remote Address:127.0.0.1:3030 
Referrer Policy:no-referrer-when-downgrade 
 
Response Headers: 
access-control-allow-headers:content-type, accept 
access-control-allow-methods:GET, POST, PUT, DELETE, OPTIONS 
access-control-allow-origin:http://localhost:3000 
access-control-max-age:10 
Connection:keep-alive 
Content-Type:application/json 
Date:Wed, 26 Apr 2017 14:31:58 GMT 
Transfer-Encoding:chunked 
X-Powered-By:Express 
 
Request Headers: 
Accept:*/* 
Accept-Encoding:gzip, deflate, sdch, br 
Accept-Language:en-GB,en;q=0.8,en-US;q=0.6,ru;q=0.4 
Access-Control-Request-Headers:authorization,content-type 
Access-Control-Request-Method:GET 
Connection:keep-alive 
Host:localhost:3030 
Origin:http://localhost:3000 
Referer:http://localhost:3000/ 
User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36

помогите настроить ответ с сервера чтоб ajax-запрос работал без ошибки

Answer 1

В заголовках ответа Access-Control-Allow-Headers надо разрешить Authorization

READ ALSO
map и undefined

map и undefined

Такой код

357
Вставить HTML код в ячейку с помощью Javascript

Вставить HTML код в ячейку с помощью Javascript

Доброго времени суток, прошу, помогите решить проблему, у меня есть скрипт, который берет данные из этих инпутов:

476