TypeError:转发axios响应时将循环结构转换为JSON



我有一个API,我需要在控制器函数中调用另一个API。我使用Axios,但当我试图将Axios的响应附加到我的原始API响应时,它会抛出这个错误:TypeError: Converting circular structure to JSON.

下面是一个示例代码片段

const userController = async (req,res)=>{
const ax = await axios.put(someURL, reqBody)
res.status(200).json(ax)
}

我知道这样做是荒谬的,我知道为什么会导致这个错误,但是谁能给我解释一下在这种情况下是如何发生的?

TypeError: Converting circular structure to JSON是指对象中的某些属性在另一个内部对象中重复。

Axios响应具有以下属性:

// `data` is the response that was provided by the server
data: {..your real json response..},
// `status` is the HTTP status code from the server response
status: 200,
// `statusText` is the HTTP status message from the server response
statusText: 'OK',
// `headers` the HTTP headers that the server responded with
headers: {},
// `config` is the config that was provided to `axios` for the request
config: {},
// `request` is the request that generated this response
request: {}

如果你发送整个如果要将axios响应对象转换为json,则实际json响应中的某些属性可以repeat私有axios属性的名称,如:status, data config等

修复尝试用ax.data代替使用整个axios响应ax

相关内容

  • 没有找到相关文章

最新更新