मैं एक jQuery AJAX पोस्ट को सर्वलेट में पोस्ट कर रहा हूं और डेटा JSON स्ट्रिंग के रूप में है। इसकी सफलतापूर्वक पोस्ट हो रही है लेकिन सर्वलेट पक्ष पर मुझे इन कुंजी-वैल जोड़े को सत्र ऑब्जेक्ट में पढ़ने और उन्हें स्टोर करने की आवश्यकता है। मैंने JSONObject क्लास का उपयोग करने का प्रयास किया लेकिन मैं इसे प्राप्त करने में सक्षम नहीं हूं।सर्विसलेट में JSON स्ट्रिंग पढ़ें
यहाँ कोड स्निपेट
$(function(){
$.ajax(
{
data: mydata, //mydata={"name":"abc","age":"21"}
method:POST,
url: ../MyServlet,
success: function(response){alert(response);
}
});
सर्वलेट पक्ष
public doPost(HTTPServletRequest req, HTTPServletResponse res)
{
HTTPSession session = new Session(false);
JSONObject jObj = new JSONObject();
JSONObject newObj = jObj.getJSONObject(request.getParameter("mydata"));
Enumeration eNames = newObj.keys(); //gets all the keys
while(eNames.hasNextElement())
{
// Here I need to retrieve the values of the JSON string
// and add it to the session
}
}
क्यों जावास्क्रिप्ट ऑब्जेक्ट mydata नहीं बना है जिसमें mydata.name, mydata.age शामिल है? फिर आप जेसन को डीकोड करने के बजाए अपने सर्वलेट में विशिष्ट पैरामीटर खींच सकते हैं? – dmcnelis
मैं नहीं कर सकता कि कुंजी-वैल एक POST से दूसरे – sv1
में भिन्न हो सकते हैं, जब आप अपने फ़ंक्शन में JQuery के साथ जेसन को डीकोड कर सकते हैं, fwiw। यह नहीं कह रहा कि आपका समाधान होना चाहिए, लेकिन यह वही काम पूरा करेगा। – dmcnelis