2008-11-21 10 views
18

क्या यह validate JSON पर सबसे अच्छा अभ्यास है?क्या JSON सत्यापन सर्वोत्तम अभ्यास है?

JSON schema proposal और JavaScript implementation of a JSON Schema validator दोनों के साथ, यह अभ्यास लागू करने के लिए अपेक्षाकृत घर्षण प्रतीत होता है। तो, क्या यह कोई ब्रेनर नहीं है जो किसी भी मजबूत आवेदन का हिस्सा होना चाहिए? या आप खराब JSON को संभालने के लिए अन्य पसंदीदा रणनीतियों को नियोजित करते हैं?

उत्तर

7

सर्वर पर, बाहर से आने वाले डेटा की सत्यापन एक जरूरी है।

ब्राउज़र में, यह सुरक्षा पीओवी से अनावश्यक है, अगर आप यह बता सकते हैं कि जेएसओएन आपके द्वारा नियंत्रित सर्वर कोड द्वारा जेनरेट किया गया है और यह किसी भी डेटा पर निर्भर करता है जो सर्वर पर मान्य है। यहां तक ​​कि यह अभी भी डीबगिंग के लिए उपयोगी हो सकता है।

+0

आप सर्वर की तरफ कैसे वैध हैं? मैं पीएल/एसक्यूएल से अपने JSON को लात मार रहा हूं, इसे वापस प्राप्त करने वाले DOJO घटक को भेज रहा हूं। मैं जेएसओएन संदर्भों से ऊपर देख सकता हूं कि क्लाइंट पक्ष पर सत्यापन कैसे करें ... लेकिन सर्वर की तरफ स्पष्ट नहीं है। –

+0

मेरा मतलब बाहरी दुनिया से प्राप्त सर्वर डेटा पर मान्य है। यदि आप उस दिशा में JSON के रूप में इसे मार्शल करने के लिए परेशान हैं। मैं सुरक्षा के बारे में सोच रहा हूँ; दूसरी तरफ बहने वाले डेटा को डीबग करने के लिए, ग्राहक में सत्यापन पर्याप्त है। असल में, मैं अपना खुद का सत्यापन कोड रोल करता हूं, मुझे डर है। – moonshadow

4

इस पर मेरे 2c है कि:

(क) हाँ, स्पष्ट रूप से आने वाले डेटा सत्यापित की जानी चाहिए, लेकिन

(ख) यह करने के लिए सबसे अच्छी जगह है, उसी रूप में JSON डेटा के साथ नहीं है, लेकिन वास्तविक व्यापार तर्क वस्तुओं के साथ, iff डेटा बाइंडिंग का उपयोग किया जाता है। जेएसओएन सत्यापन केवल तभी समझता है जब आप "कच्चे" JSON को संभालते हैं, लेकिन अधिकांश सेवाएं (कम से कम जावा में) पहले डेटा बाध्यकारी का उपयोग करती हैं और फिर डेटा प्रारूप (जो अक्सर लगभग कार्यान्वयन विवरण) पर नहीं होती है,

संबंधित मुद्दे