ReactJS MeteorJS Axios // 401 [未经授权] 错误

Posted

技术标签:

【中文标题】ReactJS MeteorJS Axios // 401 [未经授权] 错误【英文标题】:ReactJS MeteorJS Axios // 401 [Unauthorized] error 【发布时间】:2018-02-23 13:29:03 【问题描述】:

我在从用 Python 编写的数据库中获取数据时遇到了一些问题。我包含在组件中的代码是:

axios.get('http://192.168.122:8000/messenger_api/fb_fanpages/', 
      headers: 
        'authorization': 'Token 539dec',
        'content-type': 'application/json'
      
    ).then(resp => 
      console.log(resp)
    ).catch(err => 
      console.log(err)
    )

我收到的浏览器错误是

error screenshot

我在 youtube 上查看了大量文章并观看了教程,但是我找不到解决问题的方法。我认为它与我正在使用的堆栈有关 - 也许是因为 Meteor?我正在考虑的另一个选项是标题 - 我使用了错误的语法?但是,这不太可能,因为正如我所说,我检查了文档等。对我来说一切看起来都很好。我不仅确定 Meteor env 什么的。我还为 Chrome 安装了 CORS 扩展程序以排除此选项。提前感谢所有答案。

【问题讨论】:

小更新。当我使用 Insomia 时,我可以得到响应。我还在代码中添加了 withCredentials: true 现在错误是 XMLHttpRequest cannot load Response to preflight request doesn't pass access control check: The value of the 'Access-Control-Allow-Origin' header in the response must not be the当请求的凭据模式为“包含”时,通配符“*”。因此,Origin 'localhost:3000' 不允许访问。 XMLHttpRequest 发起的请求的凭证模式由 withCredentials 属性控制。 【参考方案1】:

你看看错误信息怎么样,它基本上告诉你问题,这是一个401(未经授权)。

如果您不知道,则表示您提供的凭据未被接受。我不知道此代码示例是否具有真实凭据,我认为没有。

阅读 axios doco 以确保您正确调用它,并检查令牌以确保它是有效的

【讨论】:

我确实读过它,也检查了凭据。还是不行。在提到的文档中没有关于传递两个标题的内容,所以也许我必须以不同的方式传递它......不知道。另一件事,Meteor 可能有一些问题?感谢参与 你可以使用 Postman 来测试它——用这种方式尝试不同的东西可能会更快,一旦你知道你可以从远程系统获得响应,那么你就可以使用流星/axios 来测试它

以上是关于ReactJS MeteorJS Axios // 401 [未经授权] 错误的主要内容,如果未能解决你的问题,请参考以下文章

reactjs-Axios 帖子返回空对象

带有 Reactjs 的 Axios 发布表单

ReactJS 中的 Axios 与 Fetch [关闭]

ReactJs,如何给 Axios 我的令牌以从 API 检索数据

对本地主机的调用不适用于 ReactJS/Axios/Express

Yelp Api - Axios/ReactJs - 如何编写代码