使用 jquery ajax 捕获 401 Unauthorized http 响应
catch a 401 Unauthorized http response using jquery ajax
如何在 "fail" jquery 回调函数中访问状态代码。 jXhr 报告代码为 0。textStatus 为 "error"。使用 curl 发出请求时,会出现 json 响应正文并且状态代码设置正确。见下文。
< HTTP/1.1 401 Unauthorized
HTTP/1.1 401 Unauthorized
< Server: nginx/1.10.0 (Ubuntu)
Server: nginx/1.10.0 (Ubuntu)
< Date: Tue, 09 Aug 2016 01:39:03 GMT
Date: Tue, 09 Aug 2016 01:39:03 GMT
< Content-Type: application/json
Content-Type: application/json
< Content-Length: 42
Content-Length: 42
< Connection: keep-alive
Connection: keep-alive
<
* Connection #0 to host api.somedomain.com left intact
{"status": "error", "msg": "unauthorized"}
我是不是漏掉了什么。这不是 jsonp 请求。服务器设置:
Access-Control-Allow-Origin 在此 GET 请求之前的预检 OPTIONS 请求期间适当。父域相同,只有子域不同。
后端正在使用 python 3 with Bottle
没有触发401回调的statusCode,触发了error回调,但是状态码设置为0,而且完整的回调报告状态码为0。其他问题没有解决我的问题。
即使预检选项调用成功并且设置了所有跨域相关 header。随后的 GET 调用还必须设置以下 header:Access-Control-Allow-Origin
我添加了它并解决了问题。希望这对将来的人有所帮助。
如何在 "fail" jquery 回调函数中访问状态代码。 jXhr 报告代码为 0。textStatus 为 "error"。使用 curl 发出请求时,会出现 json 响应正文并且状态代码设置正确。见下文。
< HTTP/1.1 401 Unauthorized
HTTP/1.1 401 Unauthorized
< Server: nginx/1.10.0 (Ubuntu)
Server: nginx/1.10.0 (Ubuntu)
< Date: Tue, 09 Aug 2016 01:39:03 GMT
Date: Tue, 09 Aug 2016 01:39:03 GMT
< Content-Type: application/json
Content-Type: application/json
< Content-Length: 42
Content-Length: 42
< Connection: keep-alive
Connection: keep-alive
<
* Connection #0 to host api.somedomain.com left intact
{"status": "error", "msg": "unauthorized"}
我是不是漏掉了什么。这不是 jsonp 请求。服务器设置: Access-Control-Allow-Origin 在此 GET 请求之前的预检 OPTIONS 请求期间适当。父域相同,只有子域不同。
后端正在使用 python 3 with Bottle
没有触发401回调的statusCode,触发了error回调,但是状态码设置为0,而且完整的回调报告状态码为0。其他问题没有解决我的问题。
即使预检选项调用成功并且设置了所有跨域相关 header。随后的 GET 调用还必须设置以下 header:Access-Control-Allow-Origin
我添加了它并解决了问题。希望这对将来的人有所帮助。