gpt4 book ai didi

javascript - 无法在 servlet 中获取 JSON 字符串

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:12:15 25 4
gpt4 key购买 nike

我正在尝试通过 JSON 将一些变量从 JSP 通过 ajax 调用传递到 servlet。但是我在 servlet 端得到了空值。请有人帮助我找出我在哪里犯了错误/我错过了什么

//JSON	
var masterdata = new Object();
masterdata.grn = $('#grn').val();
masterdata.pono = $('#pono').val();
masterdata.podt = $('#podt').val();

//call the servlet to insert the data only when error = 0
if (error != 1){
$.ajax({
url : 'insertserv',
type: 'POST',
dataType: 'json',
data: {test : JSON.stringify(masterdata)},
contentType: 'application/json',
mimeType: 'application/json',
success : function(data) {
alert('Hi');
}
});
}
else{
alert("Save cannot be performed. Please check the entered data!");
}
});

public class insertserv extends HttpServlet {
private static final long serialVersionUID = 1L;


protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
System.out.println("I am inside insert");
String masterdata = request.getParameter("test");
System.out.println("masterdata : "+masterdata);

response.setContentType("text/plain");
}
}

最佳答案

用我的代码替换你的ajax代码...

//JSON	
var masterdata = new Object();
masterdata.grn = $('#grn').val();
masterdata.pono = $('#pono').val();
masterdata.podt = $('#podt').val();

//call the servlet to insert the data only when error = 0
if (error != 1){
$.ajax({
url : 'insertserv',
type: 'POST',
dataType: 'json',
data: JSON.stringify({"test" :masterdata}),
contentType: 'application/json',
mimeType: 'application/json',
success : function(data) {
alert('Hi');
}
});
}
else{
alert("Save cannot be performed. Please check the entered data!");
}
});

在servlet中获取数据

 BufferedReader br = new BufferedReader(new InputStreamReader(request.getInputStream()));
String json = "";

if (br != null) {
json = br.readLine();
}
JSONObject wholedata= new JSONObject(json);

现在对象 wholedata 有一个你的 json..

如果你正在使用 JSON.stringify() 那么你必须使用servlet 中的 BufferedReader, 当您在 servlet 的 URL 中传递数据时,您可以在 servlet 中使用 request.getparameter。

关于javascript - 无法在 servlet 中获取 JSON 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42547702/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com