我想驗證傳入的json對象在服務器端的正確性。有沒有一個標準/最佳的方式來做到這一點?你的驗證方法是什麼?如何驗證JSON對象?
回答
我的建議 - 反序列化JSON並查看它是否中斷。例如,如果您在服務器端使用C#,則可以使用新穎的DataContractJsonSerializer
,或者使用JavaScriptSerializer
這種可以簡單得多的舊方法。
var serializer = new JavaScriptSerializer();
var result = serializer.Deserialize<Dictionary<string, object>>(jsonString);
編輯:而現在,它的問世,您使用的是Java,當然,我的C#示例是不會爲你工作,但概念是相同的。 Stackoverflow已經有一些答案here:Convert a JSON string to object in Java ME?
感謝您的迴應。我知道如何將json轉換爲java對象。我想在它轉換成java對象之前對它進行快速通用驗證(以檢查它是否有效)。 – 2011-02-24 04:29:16
@Harsha驗證JSON文本意味着在某種程度上解析它。因此,對於正確的json文本(在任何體面的應用程序中,它應該超過無效的json的一個很大的因素),你最終會做雙重解析。這真的值得嗎? – rahulmohan 2011-02-24 05:40:51
很多時候,您可能希望在請求到達後端之前進行驗證。在這種情況下,某種模式驗證是按順序進行的。 – TechTrip 2012-05-11 09:37:05
使用JSON庫對其進行解碼。如果它使用符合規範的庫成功解碼,那麼它是有效的。
是最快捷的方法之一是將其解碼爲java對象,並查看它是否在解碼時拋出錯誤。我想對給定的json對象進行通用驗證,而無需將其轉換爲java對象。我不想創建僅用於驗證的java對象。任何你最喜歡的json庫/實用程序會幫助我嗎? – 2011-02-24 04:35:43
- 1. 如何驗證動態JSON對象
- 2. 如何驗證codeigniter中的json對象?
- 3. Laravel:驗證json對象
- 4. 如何驗證DOMDocument對象
- 5. 如何「驗證」CWnd *對象?
- 6. 如何驗證POCO對象
- 7. JSON不驗證。多個對象
- 8. Laravel驗證對象json的數組
- 9. json對象的NodeJS驗證庫
- 10. 表單驗證嵌套JSON對象
- 11. 如何驗證json對象字段是否與nodeJS tv4驗證庫相同?
- 12. 驗證對象
- 13. 驗證對象
- 14. 如何驗證PHP中的JSON空對象
- 15. 如何JSON對象校驗值ionic2
- 16. 如何驗證驗證需要其他對象知識的綁定對象?
- 17. Hibernate驗證器如何驗證包括其相關對象的對象?
- 18. 如何驗證數組中的對象?
- 19. 如何在Java中驗證Date對象
- 20. 如何驗證對象jQuery中
- 21. 如何驗證SQLAlchemy的引擎對象
- 22. 如何驗證.NET集合的對象?
- 23. 深對象驗證
- 24. 驗證geojson對象
- 25. 驗證子對象
- 26. PHP對象驗證
- 27. Joi對象驗證:如何驗證未知鍵名的值?
- 28. 如何驗證如果對象的數組,每個對象
- 29. 如何驗證JSON正確
- 30. 驗證關聯對象(延遲驗證)
你使用什麼服務器端語言?很多將取決於此。 – mattmc3 2011-02-24 04:14:39
我正在使用Java – 2011-02-24 04:15:53