我是java的新手,我为这个问题苦苦挣扎了2天,最后决定在这里提问。
我正在尝试读取jQuery发送的数据,因此可以在servlet中使用它
jQuery的
var test = [ {pv: 1000, bv: 2000, mp: 3000, cp: 5000}, {pv: 2500, bv: 3500, mp: 2000, cp: 4444} ]; $.ajax({ type: 'post', url: 'masterpaket', dataType: 'JSON', data: 'loadProds=1&'+test, //NB: request.getParameter("loadProds") only return 1, i need to read value of var test success: function(data) { }, error: function(data) { alert('fail'); } });
Servlet
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if (request.getParameter("loadProds") != null) { //how do i can get the value of pv, bv, mp ,cp } }
我非常感谢您可以提供的任何帮助。
除非正确发送,否则将无法在服务器上对其进行解析:
$.ajax({ type: 'get', // it's easier to read GET request parameters url: 'masterpaket', dataType: 'JSON', data: { loadProds: 1, test: JSON.stringify(test) // look here! }, success: function(data) { }, error: function(data) { alert('fail'); } });
您必须使用JSON.stringifyJSON字符串来发送JavaScript对象。
JSON.stringify
然后在服务器上:
String json = request.getParameter("test");
您可以json手动或使用任何库来解析字符串(我建议使用gson)。
json