gpt4 book ai didi

javascript - 如何在获取 api 中处理 HTTP 代码 4xx 响应

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:31:38 26 4
gpt4 key购买 nike

我想知道当我们使用 ajax 函数时我们应该如何处理来自后端的 400。我们可以在 promise 解析函数中创建 if 语句,并检查 res 状态是否为 400。不同的方法是为获取创建包装服务,当我们从服务器获得 400 时,我们抛出异常。如何处理该问题?

最佳答案

我建议使用一个包装器来检查 response.ok 如果响应代码为 2xx,则为真。

请注意来自 MDN page on fetch() 的声明:

An accurate check for a successful fetch() would include checking thatthe promise resolved, then checking that the Response.ok property hasa value of true. An HTTP status of 404 does not constitute a networkerror.

这是一个像这样的包装器:

function fetchData() {
return fetch.apply(null, arguments).then(response => {
if (!response.ok) {
// create error object and reject if not a 2xx response code
let err = new Error("HTTP status code: " + response.status)
err.response = response
err.status = response.status
throw err
}
return response
})
}

关于javascript - 如何在获取 api 中处理 HTTP 代码 4xx 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40248231/

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