2010-05-28 20 views
9

को संभालने के लिए मेरे पास एक पृष्ठ है जो HtmlUnit में एक अप्रत्याशित पृष्ठ के रूप में वापस आता है, प्रतिक्रिया JSON है। क्या मैं इसे पार्स करने के लिए HTMLUnit का उपयोग कर सकता हूं या क्या मुझे अतिरिक्त लाइब्रेरी चाहिए?एचटीएमएल, एक JSON प्रतिक्रिया

उत्तर

16

HtmlUnit इसका समर्थन नहीं करता है। यह एक जेएस फ़ंक्शन को उच्चतम निष्पादित कर सकता है। लौटाए गए प्रतिक्रिया के Content-Type से पहले आपको जांचना होगा और फिर इसे पार्स करने के लिए उपयुक्त टूल का उपयोग करें। Google Gson इसमें उपयोगी है।

WebClient client = new WebClient(); 
Page page = client.getPage("https://stackoverflow.com/users/flair/97901.json"); 
WebResponse response = page.getWebResponse(); 
if (response.getContentType().equals("application/json")) { 
    String json = response.getContentAsString(); 
    Map<String, String> map = new Gson().fromJson(json, new TypeToken<Map<String, String>>() {}.getType()); 
    System.out.println(map.get("displayName")); // Benju 
} 

JSON संरचना पहले से जाना जाता है, तो आप भी Gson का उपयोग यह एक fullworthy JavaBean कन्वर्ट करने के लिए कर सकते हैं। आप this answer में एक उदाहरण पा सकते हैं।

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