Why Is My catch Block Not Catching “Cross origin requests are only supported for protocol schemes: http…”
我有一个javascript脚本,它使用jquery
1 2 3 4 | catch (error) { alert(error.message); } |
我的代码运行良好,但为了彻底测试它,我故意更改了协议,使URL看起来像这样:
1 | "htt://some.domain:8080/jsonrpc" |
我的代码不捕获错误并显示警报。相反,chrome控制台显示以下错误:
XMLHttpRequest cannot load htt://some.domain:8080/jsonrpc. Cross origin requests are only supported for protocol schemes: http, data,
chrome, chrome-extension, https, chrome-extension-resource.
我希望在控制台中出现某种格式错误的URL异常,而不是错误。
其他故意错误(如密码错误)的结果会导致捕获异常。
谢谢
因为Ajax是异步的。错误发生在try/catch块之外。
当状态更改为
当状态为0时,可以传递给jquery ajax的