我使用ReactJS和CREATE-反应,应用建立一个简单的Web应用程序。提取API响应头不显示
我有一个后端API设置在Heroku,我可以让POST请求。一切正常,除了:
当我使用fetch API发出POST请求时,响应100%正确,但它只给我2个标准头。我想获得我的自定义标题。我在我的回复中添加了公开标题,这里是情节变化:当我从Chrome Inspection Tool或Postman(API工具)查看标题时,它会显示所有标题,包括我的自定义标题。这里是我使用的取出码 -
fetch(theUrl, {
method: 'POST',
body: JSON.stringify({
"placeholder": "placeholder"
})
})
.then(function(res) {
console.log(res.headers.get('CUSTOM_HEADER_NAME'));
})
如果这有什么差别,这取方法是从ReactJS组件的主体之外的函数调用。
自定义标题的名称是Image-Identification-Path
,并且我的响应标题中的标题为的Access-Control-Expose-Headers
。
摘要:如何使用fetch获取自定义标题?
这是一个交叉来源请求?当你说*“我在我的回复中添加了公开标题”*时,你的意思是你已经将自定义标题的名称添加到Access-Control-Expose-Headers响应标题的值中了? – sideshowbarker
是的,这是一个跨域请求。我现在在localhost上运行我的应用程序。我通过在Heroku上上传我的应用程序来测试了这一点,但它给出了相同的结果。 此外,我已将自定义标头的名称添加到Access-Control-Expose-Headers响应标头的值中。 – Fahmid
您的屏幕快照显示您在Access-Control- * Allow * -Headers标题的值中包含Image-Identification-Path标题名称。您需要将其设置为Access-Control- * Expose * -Headers标题的值。 (Access-Control-Allow-Headers用于列出自定义*请求*标头名称。) – sideshowbarker