2017-08-29 1 views
0

ich möchte zu verwenden, ich möchte Benutzer-ID mit seiner Netzwerkkarte MAC-Adresse zu verschlüsseln.
cryptoJS muss JSON.stringify diese Daten dann verschlüsselt werden.
aber ich sehe diesen Fehler in der Konsole:wie zu lösen kreisförmige struktur in node.js

var mac = 'e0:23:e3:46:57:52' 
var userInfo = JSON.stringify({_id: user._id, mac: mac}) 
var cookie = crypto.AES.encrypt(userInfo, 'secret key') 
res.cookie('userInfo', cookie, { expires: new Date(Date.now() + 900000000) }) 
+0

Was ist der Typ von 'user._id'? Ich denke, es könnte einen Zirkelschluss enthalten. – Thomas

+0

eine Object.id von mongodb – mo30

+0

Wenn der Fehler vom 'JSON.stringify' Aufruf kommt, hat dies nichts mit Verschlüsselung, Cookies oder Cryptojs zu tun. – Thomas

Antwort

0

user._id ist ObjectId, nur wandeln es in string::

var userInfo = JSON.stringify({ _id: user._id.toString(), mac: mac }); 

Auch

TypeError: Converting circular structure to JSON 

dies ein Ausschnitt aus meinem Code ist versuchen Sie util.inspect zu verwenden, es ersetzt automatisch kreisförmige Verbindungen mit [Circular].

+0

zeigt immer noch denselben Fehler :( – mo30

+0

Mac ist eine MAC-Adresse, eine Zeichenfolge – mo30

Verwandte Themen