记一次node上的小采坑 [TypeError: Converting circular structure to JSON]

最近在做微信授权登陆,因为安全性,Acess_Token这一部分是在node上获取,然后再返回给前端。

node用的axios,在获取Acess_Token的时候axios的catch捕获到了一个错误,[TypeError: Converting circular structure to JSON]。

百度搜了一下说是因为 JSON.stringify 引起的,不记得写过JSON.stringify,但还是找了找,就那么几行的代码翻了个底朝天也没看到哪怕有一句的 JSON.stringify。

从头到尾排各种错误各种调试,真是想不出来是哪里的错误,甚至还想换成JQ或者fetch试试,结果……暂且不提。

干脆把ajax那部分的业务逻辑代码全部注释掉,然后只输出获取到的信息,结果catch没有异常了,直接输出了获取到的结果。

找到了突破口就好说了,接下来又一步一步的调试,发现问题是出现在 res.send 的身上。

ajax返回来的数据我放在了一个对象中的属性里,报错。

但是如果只获取拿到的数据中的data字段,也就是不包括axios上的信息只有微信的信息(access_token, expires_in, refresh_token, openid, scope),就可以正常返回了。

初步估计是因为axios返回结果比较特殊,无法正常返回,具体研究有时间会研究一下,这里做一个小标记。

转载于:https://www.cnblogs.com/xwant/p/8046456.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值