पार्स करने के लिए जावास्क्रिप्ट eval का उपयोग करना प्रश्न: मैं अपने वेबमाइड्स में से एक से JSON रिटर्न वैल्यू को पार्स करने के लिए eval का उपयोग कर रहा हूं।
मैं jquery-json जोड़ना पसंद नहीं करता क्योंकि स्थानांतरण मात्रा पहले से काफी बड़ी है। तो मैं eval के साथ JSON वापसी मान पार्स।
अब अफवाहें चलती हैं कि यह असुरक्षित है। क्यूं कर ?
कोई भी जेएसओएन रिटर्न वैल्यू को संशोधित नहीं कर सकता है जब तक कि वे मेरे सर्वर को हैक नहीं करते हैं, इस मामले में मुझे वैसे भी बड़ी समस्या होगी।
और यदि वे इसे स्थानीय रूप से करते हैं, तो जावास्क्रिप्ट केवल अपने ब्राउज़र में निष्पादित होता है।
तो मैं यह देखने में असफल रहा कि समस्या कहां है।
क्या कोई इस ठोस उदाहरण का उपयोग करके इस पर कुछ प्रकाश डाल सकता है?जेएसओएन
function OnWebMethodSucceeded(JSONstrWebMethodReturnValue)
{
var result=eval('(' + JSONstrWebMethodReturnValue + ')')
... // Adding result.xy to a table
}
यह ध्यान दिया जाना चाहिए कि क्रॉकफोर्ड के JSON में दो अन्य पुस्तकालय शामिल हैं (मुख्य json.js और json2.js के अलावा) विभिन्न पार्सिंग मोड के साथ जो 'eval' का उपयोग नहीं करते हैं। वे 'json_parse.js' और' json_parse_state.js' हैं और यहां पाए जा सकते हैं [https://github.com/douglascrockford/JSON-js/) –
@ कैमिलो: बढ़िया, इसके लिए धन्यवाद! –
क्या यह कहना ठीक है कि मेरे पास बाहरी स्रोत से कोई इनपुट नहीं है, मैं सुरक्षित रूप से eval का उपयोग कर सकता हूं? –