Reactjs 未设置react fetch标头
我面临一个问题。其他人所接受的解决方案,对我来说不起作用/ 我有:Reactjs 未设置react fetch标头,reactjs,fetch,Reactjs,Fetch,我面临一个问题。其他人所接受的解决方案,对我来说不起作用/ 我有: return await fetch(url, { method: httpMethod, headers: { 'Accept': 'application/json', 'Content-Type': 'application/json', 'x-test':'try me', }, bod
return await fetch(url, {
method: httpMethod,
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
'x-test':'try me',
},
body: JSON.stringify(bodyObject)
});
但是,似乎根本没有设置标题
设置了Cors头,添加模式:'Cors'
没有区别
我错过什么了吗
请求:
Accept
为空,Content-Type
或x-test
都找不到
编辑
如果我需要提出新问题,一定要告诉我
新要求
所以我看到页眉被设置好了-感谢liminal18!-。然而,现在我想授权给一个广告
所以现在我得到了:
async callUrl(url, httpMethod, bodyObject) {
try {
var requestObj = {
method: httpMethod,
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
'x-test':'try me',
'Authorization': 'Basic Uk11bGxlc....'
}
};
if (bodyObject !== undefined){
requestObj.body = JSON.stringify(bodyObject);
}
return await fetch(url, requestObj);
} catch(error){
console.error(error);
}
}
但仍然可以拿到401。
我知道这不是用于登录的干净解决方案,只是测试而已。您确定捕获的请求是正确的请求吗?
如果您正在使用CORS,那么在react will post/put之前,有一个选项post可以获取CORS允许的方法,这可能是您正在查看的内容,而不是您想要的实际post或put。CORS收割台设置在哪里?100%确定。响应头有:Access Control Allow Origin:*,可能我遗漏了什么,但这只是一个Get,这会有区别吗?在请求上,请求方法是否与发送给获取的方法匹配?这是React.Js还是React Native?请记住,React Native不使用CORS。服务器上是否允许使用GET方法?您必须指定允许的方法和来源。是的,我刚刚在控制台中尝试过,我的选项帖子缺少标题,但是我的GET请求确实有标题。您是否使用chrome或firefox作为浏览器?您可以尝试使用if(bodyObject)并让javascript将对象转换为布尔值。干得好,不过很高兴你取得了进步。401计划对CORS有什么影响?CORS可能有点棘手。响应中的allow标头只是授权btw选项btw不应返回401,可能您缺少带有刷新令牌/访问令牌的auth标头?好的,对前端的第一次调用会提示一个基本身份验证框,当登录时,代理将继续到所需的站点,相同的站点通过相同的代理对后端进行调用。我希望我可以使用相同的凭证,比如“凭证”:“包括”。因此,尝试授权…:)需要设置另一个标头吗?请在登录时查看请求,并查看是否存在auth标头。很多事情都可能出错。另外,我认为有一种存储身份验证令牌的方法,可以使用redux并创建一个会话缩减器来存储atuh令牌,然后在用户登录时附加它的请求。奇怪的是,我从未在react中与auth打过交道!