【问题标题】:No response in browser but getting 401 in postman浏览器没有响应,但在邮递员中得到 401
【发布时间】:2021-03-10 19:43:13
【问题描述】:

我正在使用 JWT 调用 API。当令牌过期或发送无效令牌时,我在邮递员中收到 401,但是当我在浏览器中执行此操作时,我收到“网络错误”。 并且在令牌有效时起作用。

我使用 axios 调用 API,error.response 未定义。当我在catch 中对错误对象进行字符串化时,我看到如下内容:

{
    message :   'Network Error',
    name    :   'Error',
    stack   :   'Error: Network Error\n    at createError (webpack-internal:///./node_modules/axios/lib/core/createError.js:16:15)\n    at XMLHttpRequest.handleError (webpack-internal:///./node_modules/axios/lib/adapters/xhr.js:83:14)'
    }

我在 OPTIONS 请求中得到 200,但在主要的 GET 请求中出现上述错误。这可能是因为 CORS。但我不知道要改变什么。 Access-Control-Allow-Origins*

我不明白为什么我没有在浏览器中得到 401。谁能告诉我如何解决这个问题?

网络标签的屏幕截图:

选项:

【问题讨论】:

  • 发布发出请求的代码和响应该请求的代码怎么样?
  • 你需要在这里发布一些代码。仅仅拥有请求屏幕截图是不行的。

标签: javascript java cors


【解决方案1】:

要修复它,请尝试添加其他跨域资源共享 (CORS) 标头。检查他们在 https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS

【讨论】:

    【解决方案2】:

    我认为您实际上没有错误。只是 axios 默认会抛出所有 4xx 响应。请尝试以下操作:

    axios.get("...", { validateStatus(status) { return true; } })
    

    【讨论】:

      【解决方案3】:

      您的服务器可能未将 Access-Control-Allow-Credentials 设置为 true 以允许授权用户进行原始访问。

      【讨论】:

      猜你喜欢
      • 2017-07-22
      • 2020-03-26
      • 1970-01-01
      • 2019-06-09
      • 1970-01-01
      • 1970-01-01
      • 2014-10-07
      • 1970-01-01
      • 2018-11-30
      相关资源
      最近更新 更多