javascript - 通过 Jquery GET 调用将 JSON 对象传递给 Java Servlet

标签 javascript java jquery servlets

如何使用 JQUERY get 方法将 JSON 数组/对象传递给我的 Java Servlet?

到目前为止,这是我的代码:

 var json = {
        MA_ID : $("#emplID").val(),
        MA_Nachname : $("#nachname").val()
 }
  $.get(url + "/MA_Update", json) 
  [...]

MA_Update.java

protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
    StringBuffer jb = new StringBuffer();
    String line = null;
    BufferedReader reader = request.getReader();
    while ((line = reader.readLine()) != null) {
        jb.append(line);
    }

    try {
        JSONObject jsonObject = HTTP.toJSONObject(jb.toString());
        System.out.println(jsonObject);
    } catch (JSONException e) {
        // crash and burn
        throw new IOException("Error parsing JSON request string");
    }
}

但我只得到

{"Request-URI":"","Method":"","HTTP-Version":""}

根据我的要求

最佳答案

不要使用request.getReader(),使用request.getParameter("MA_ID")等,或者request.getParameterMap() >(并迭代它)。

问题是,$.get(url, jsObject) 创建了一个 HTTP GET 请求,其中 jsObject 的字段被转换为查询参数,即 http://your .server.com/MA_Update?MA_ID=someID&MA_Nachname=SomeLastName,因此它们在请求正文中不可用(因为它们在 POST 请求中)。

关于javascript - 通过 Jquery GET 调用将 JSON 对象传递给 Java Servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57369944/

相关文章:

javascript - 当不需要返回时忽略 JavaScript 或 TypeScript 中箭头函数内的隐式返回是否错误

javascript - 为什么我在这里看到 "origin is not allowed by Access-Control-Allow-Origin"错误?

java - 更新 Sprite 图像时出现 ConcurrentModificationException

java - 当手机没有任何互联网时无法从 url 获取图标,或者是否可以保存在内部存储然后从那里读取

java - Testcontainers不使用本地docker镜像

javascript - 如何使用 NodeJS 获取 "HTTP_REFERER"?

javascript - 在 http 响应中与 html 文档一起发送 JWT

javascript - 允许特定产品代码、提醒并删除重复项

jquery - 选择表单中的所有其他字段

javascript - HTML 数组上的淡入/淡出