我正在将 json 数据发送到另一个 jsp 页面 - 真正用于测试。
您在我的 jsp 上的文本字段中输入 JSON 格式的字符串。我通过一个表单请求提交这个,由 jquery 处理处理。它被发送到接收者 JSP。我正在使用以下代码来执行此操作。
在我发送它之前,我使用以下方法获取数据:
jsonData = $form.find( 'textarea[name="jsonData"]' ).val();
然后我做:
var parsedJsonObject = $.parseJSON(jsonData);
这是我的发送代码:
$.ajax({
type: "POST",
url: "receiver.jsp",
data: "jsonData=" + parsedJsonObject, // This is an object, created using parseJSON
success: function(data, textStatus, jqXHR) {
alert('Success : ' + data);
alert('textStatus : ' + textStatus);
alert('jqXHR : ' + jqXHR);
var jsonJqXHR = JSON.stringify(jqXHR);
alert('jsonJqXHR : ' + jsonJqXHR);
},
error:function (xhr, ajaxOptions, thrownError){
alert('Error xhr : ' + xhr.status);
alert('Error thrown error: ' + thrownError);
},
//complete: alert('complete'),
dataType: "text" // xml, json, script, text, html
});
在我的 JSP 中,我做了一个:
String jsonData = request.getParameter("jsonData");
System.out.println("jsonData : " + jsonData);
这将返回以下输出: json : "[object Object]"
我如何反序列化它?我用gson做了一些事情,但是当我尝试过时:
Gson gson = new Gson();
String json = gson.toJson(obj);
System.out.println("json = " + json); // I still get an output of: json = "[object Object]"
gson.fromJson(json, MyClass.class);
我收到一个错误:
servlet jsp threw exception: com.google.gson.JsonParseException: Expecting object found: "[object Object]"
任何人都可以帮助我从对象中获取这些数据的方式吗?