你可以在会话中存储循环对象吗?
我正在使用Blocktrail的API来pipe理比特币钱包。 这个API返回一个钱包对象,我猜它里面包含循环引用。
我想在用户的会话中存储解密的钱包,以便用户不必再次input密码,但每当我试图做这样的事情( wallet
是由API返回的钱包对象):
req.session.wallet = wallet;
我得到:
TypeError: Converting circular structure to JSON at Object.stringify (native) at MemoryStore.set
所以,如果一个对象有一个循环结构,有没有办法在会话中存储对它的引用? 为什么会发生?
您不能将循环结构序列化为JSONstring,因此无法将其存储在会话中。
在序列化为JSONstring之前,您将不得不除去所有的循环引用。