gpt4 book ai didi

typescript - 使用 fetch api 处理 500 响应

转载 作者:搜寻专家 更新时间:2023-10-30 20:35:28 29 4
gpt4 key购买 nike

我们有以下对 fetch 的调用。

this.http.fetch('flasher', { method: 'post', body: jsonPayload })
.then(response => response.json())
.then(data => console.log(data));

这在我们收到 200 响应时有效,但在我们收到 500 响应时不向控制台记录任何内容。我们如何处理 500?

最佳答案

工作解决方案

thencatch 结合使用。

fetch('http://some-site.com/api/some.json')  
.then(function(response) { // first then()
if(response.ok)
{
return response.text();
}

throw new Error('Something went wrong.');
})
.then(function(text) { // second then()
console.log('Request successful', text);
})
.catch(function(error) { // catch
console.log('Request failed', error);
});

详情

fetch() 返回包含 Response 对象的 PromisePromise 可以实现或拒绝。 Fulfillment 运行第一个 then(),返回它的 promise ,然后运行第二个 then()。拒绝在第一个 then() 上抛出并跳转到 catch()

引用资料

MDN - Promise

MDN - Checking that the fetch was successful

Google - Introduction to Fetch

关于typescript - 使用 fetch api 处理 500 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36225862/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com