मैं node.js के साथ एक फेसबुक एप्लिकेशन बनाने का प्रयास कर रहा हूं, हालांकि मुझे हस्ताक्षरित अनुरोधों की जांच करने में समस्या हो रही है। जैसे अप्रत्याशित टोकन अवैध:: हर बार जब मैं एक अनुरोध करते हैं, कार्यक्रम एक सिंटैक्स त्रुटि फेंकताNode.js JSON पार्सिंग त्रुटि
undefined:1
":"721599476"}
^^
SyntaxError: Unexpected token ILLEGAL
अपराधी समारोह नीचे है:
function parse_signed_request(signed_request, secret) {
encoded_data = signed_request.split('.',2);
// decode the data
sig = encoded_data[0];
json = base64url.decode(encoded_data[1]);
data = JSON.parse(json); // ERROR Occurs Here!
// check algorithm - not relevant to error
if (!data.algorithm || data.algorithm.toUpperCase() != 'HMAC-SHA256') {
console.error('Unknown algorithm. Expected HMAC-SHA256');
return null;
}
// check sig - not relevant to error
expected_sig = crypto.createHmac('sha256',secret).update(encoded_data[1]).digest('base64').replace(/\+/g,'-').replace(/\//g,'_').replace('=','');
if (sig !== expected_sig) {
console.error('Bad signed JSON Signature!');
return null;
}
return data;
}
बस के परीक्षण के लिए, एक वैध signed_request होगा
WGvK-mUKB_Utg0l8gSPvf6smzacp46977pTtcRx0puE.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImV4cGlyZXMiOjEyOTI4MjEyMDAsImlzc3VlZF9hdCI6MTI5MjgxNDgyMCwib2F1dGhfdG9rZW4iOiIxNTI1NDk2ODQ3NzczMDJ8Mi5ZV2NxV2k2T0k0U0h4Y2JwTWJRaDdBX18uMzYwMC4xMjkyODIxMjAwLTcyMTU5OTQ3NnxQaDRmb2t6S1IyamozQWlxVldqNXp2cTBmeFEiLCJ1c2VyIjp7ImxvY2FsZSI6ImVuX0dCIiwiY291bnRyeSI6ImF1In0sInVzZXJfaWQiOiI3MjE1OTk0NzYifQ
मुझे यह त्रुटि क्यों मिल रही है जब यह वैध JSON है और बस JSON की स्थिर स्ट्रिंग का उपयोग करके ठीक काम करेगा, और वहां हैं इसे ठीक करने के लिए कोई सुझाव?
धन्यवाद।
encoded_data [1] = { "एल्गोरिथ्म": "HMAC-SHA256", "समाप्त हो रहा है": +१२९२८२१२००, "issued_at": +१२९२८१४८२०, "oauth_token": "। 152549684777302 | 2.YWcqWi6OI4SHxcbpMbQh7A __ 3,600.1292821200-721,599,476 | Ph4fokzKR2jj3AiqVWj5zvq0fxQ" " उपयोगकर्ता ": {" लोकेल ":" en_GB "," देश ":" au "}," user_id ":" 721599476 "} – Jason