Я создаю веб-приложение с React и Redux и использую axios для выполнения своих запросов. Я хотел бы получить доступ ко всем полям в заголовке ответа. В своем браузере я могу проверить заголовок и увидеть, что все необходимые мне поля присутствуют (например, токен, uid и т. Д.), Но когда я вызываю
const request = axios.post(`${ROOT_URL}/auth/sign_in`, props);
request.then((response)=>{
console.log(response.headers);
});
Я получаю только
Object {content-type: "application/json; charset=utf-8", cache-control: "max-age=0, private, must-revalidate"}
Здесь моя вкладка сети браузера, как видите все остальные поля присутствуют.
Bests.
http-headers
es6-promise
axios
TWONEKSONE
источник
источник
axios.defaults.headers
для настройки параметров заголовка REQUEST? Мне нужно получить доступ к ответу. @BenHareОтветы:
В случае запросов CORS браузеры могут получить доступ только к следующим заголовкам ответов по умолчанию:
Если вы хотите, чтобы ваше клиентское приложение могло иметь доступ к другим заголовкам, вам нужно установить заголовок Access-Control-Expose-Headers на сервере:
источник
expose: ['Access-Token', 'Uid']
источник как:resource '*', :headers => :any, :methods => [:get, :post, :put, :patch, :delete, :options, :head], expose: ['Access-Token', 'Uid']
'Access-Control-Expose-Headers' 'Authorization, X-Suggested-Filename, content-disposition' always;
Все еще только вижу,content-type: "application/pdf"
действительно нужно тянутьcontent-disposition
Это действительно помогло мне, спасибо Нику Уралцеву за ваш ответ.
Для тех из вас , используя nodejs с CORS :
В случае, если вы отправляете ответ в виде
res.header('Authorization', `Bearer ${token}`).send();
источник
Я столкнулся с той же проблемой. Y сделал это в моем "WebSecurity.java", речь идет о методе setExposedHeaders в конфигурации cors.
Надеюсь это работает.
источник
Столкнулся с той же проблемой в ядре asp.net Надеюсь, это поможет
источник
Согласно официальным документам :
Это может помочь, если вам нужны заголовки HTTP, на которые сервер ответил . Все имена заголовков в нижнем регистре и могут быть доступны с помощью скобки. Пример:
response.headers['content-type']
даст что-то вроде: заголовки: {},источник
Для SpringBoot2 просто добавьте
к вашему коду реализации фильтра CORS, чтобы иметь белый список
custom-header1
иcustom-header2
т. д.источник
для помощи Джанго
источник
Для Spring Boot 2, если вы не хотите использовать глобальную конфигурацию CORS, вы можете сделать это на уровне метода или класса / контроллера с помощью
@CrossOrigin
надписи сexposedHeaders
атрибутом.Например, чтобы добавить заголовок
authorization
дляYourController
методов:источник