簡體   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