如果Chrome中的
fetch通话失败,那么我收到的唯一错误信息就是
在这种情况下,如何向最终用户显示内容丰富的错误讯息?@H_301_4@
特别:@H_301_4@
是否可以获得有关为什么fetch失败的任何细节?@H_301_4@
例如,如果服务器崩溃,Chrome DevTools可能会记录一个控制台消息:net:ERR_EMPTY_RESPONSE,但似乎没有办法从JavaScript访问.@H_301_4@
据我所知,答案是否定的;我认为这是为了安全的原因,以避免让恶意的JS找出哪些站点是不可访问的检查错误消息.@H_301_4@
是否可以区分其他TypeErrors的提取错误?@H_301_4@
如果我无法得到错误的详细信息,我至少要用一个内容丰富的“无法获取”来替代“无法访问该网站;请稍后重试”的消息,我想做这不会对其他TypeErrors显示该消息的风险.@H_301_4@
我在这里找到的唯一解决方案是检查实际的消息,看看它是否“无法获取”.这显然是浏览器特定的;它适用于Chrome,它似乎可以使用Chrome的任何用户语言,而其他浏览器将需要自己的测试和处理.@H_301_4@