我需要您的帮助才能将JSON从JQuery AJAX读取到我的servlet。
我想解析ajax调用jsonObject的内部数据。
我的代码获取facebook用户信息,并将相关数据传递给json,然后将AJAX调用发送给servlet。
如何在servlet请求中读取这些参数?
var jsonUserInfo = [];
jsonUserInfo.push({"id" : (response["id"] ? response["id"] : "wnull")});
jsonUserInfo.push({"first_name" : (response["first_name"] ? response["first_name"] : "wnull")});
jsonUserInfo.push({"last_name" : (response["last_name"] ? response["last_name"] : "wnull")});
jsonUserInfo.push({"username" : (response["username"] ? response["username"] : "wnull")});
jsonUserInfo.push({"birthday" : (response["birthday"] ? response["birthday"] : "wnull")});
jsonUserInfo.push({"gender" : (response["gender"] ? response["gender"] : "wnull")});
jsonUserInfo.push({"relationship_status": (response["relationship_status"] ? response["relationship_status"] : "wnull")});
jsonUserInfo.push({"timezone" : (response["timezone"] ? response["timezone"] : "wnull")});
jsonUserInfo.push({"locale" : (response["locale"] ? response["locale"] : "wnull")});
jsonUserInfo.push({"verified" : (response["verified"] ? response["verified"] : "wnull")});
jsonUserInfo.push({"updated_time": (response["updated_time"] ? response["updated_time"]: "wnull")});
jsonUserInfo.push({"interested_in": (response["interested_in"] ? response["interested_in"] : [])});
jsonUserInfo.push({"meeting_for": (response["meeting_for"] ? response["meeting_for"] : [])});
这是我的ajax调用:
$.ajax({ url: "MainController",
type:"POST",
data: ({ "action" : "setFacebookUserInfo",
"userInfo" : jsonUserInfo,
"servlet" : "UserProfile"
}),
dataType:"json",
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
success: function(data){
alert("here");
},
cache: true,
ifModified: true
});
如何使用HttpServletRequest解析Servlet中的“ jsonUserInfo”对象?
我正在使用JSON-org jar。
谢谢,
我做
最佳答案
我不了解JSON-org,但是使用JSON-simple只会执行JSONObject jsonobject = (JSONObject)(new JSONParser().parse(jsonstring));
或JSONArray jsonarray = (JSONArray)(new JSONParser().parse(jsonstring));
在org.json中,这似乎是按照以下步骤完成的:JSONObject jsonobject = new JSONObject(new JSONTokener(jsonstring));
或JSONArray jsonarray = new JSONArray(new JSONTokener(jsonstring));
关于java - 如何使用json将ajax读取到servlet,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5687250/