繁体   English   中英

当获取 url 没问题时,为什么我会收到错误 400?

[英]Why am I getting the error 400, when the fetch url is ok?

如果我在浏览器中访问链接,大多数情况下它会返回预期的结果。

含义:有时,当我在浏览器中访问 url 时,我会收到 400 错误(例如,七分之一),但在浏览器刷新后就好了。

有时当它被fetch()调用时,它会抛出 400 错误。

我不明白为什么以及如何解决它。

我正在本地测试浏览器中的文件。

我应该编写代码以在失败时再次获取吗? 这是一个好习惯吗?

示例代码:

fetch('https://my-url/some-code').then(res => res.json()).then(res => res).catch(error => console.log(error));
// randomNum iteration: expected result
// randomNum iteration: expected result
// randomNum iteration: 400 error

我应该编写代码以在失败时再次获取吗? 这是一个好习惯吗?

理想情况下,您不想调用第二个请求,因为您的服务器上很可能存在导致此响应为 400 代码的潜在问题。 我认为您当前的提取请求没有任何问题。 但是,如果您无法解决端点问题,则只需再次执行第二次提取即可。 如果它只发生 1/7 次,那么您只会将平均工作负载时间增加 12.5%,除非这是一个经常使用的应用程序,否则这没什么大不了的。

但是,如果有时需要刷新浏览器,我会进行更多故障排除以确保它确实是您的后端。 除非您刷新,否则问题不会消失吗? 如果是这样,当另一个实例需要刷新时,您能否通过打开一个单独的实例来正确访问它? 这可能指向前端。

fetch('https://my-url/some-code').then(res => res.json()).(error => console.log(error); 

删除下一个then()并删除不在( )的错误

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM