浏览器没有响应,但在邮递员中得到 401
Posted
技术标签:
【中文标题】浏览器没有响应,但在邮递员中得到 401【英文标题】:No response in browser but getting 401 in postman 【发布时间】: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。谁能告诉我如何解决这个问题?
网络标签的屏幕截图:
选项:
【问题讨论】:
发布发出请求的代码和响应该请求的代码怎么样? 你需要在这里发布一些代码。仅仅拥有请求屏幕截图是不行的。 【参考方案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
以允许授权用户进行原始访问。
【讨论】:
设置为真 @Abhi developer.mozilla.org/en-US/docs/Web/HTTP/CORS以上是关于浏览器没有响应,但在邮递员中得到 401的主要内容,如果未能解决你的问题,请参考以下文章
基本身份验证应在邮递员中响应 500(授权),但 401 Unauthorized 可以正常工作。使用 ktor intellij mongodb