簡體   English   中英

無法使用 AJAX 將 json 數據發送到 Java servlet

[英]Unable to send json data to Java servlet using AJAX

我正在嘗試將數據表的 json 數據和用戶輸入的 email 傳遞給我的 java servlet。 我得到一個狀態 200 但沒有數據響應。 我在這里有我的 AJAX 代碼:

$.ajax({
  url: "/bin/abc/sendrohssearchresult",
  type: "POST",
  contentType: "application/json",
  data:{
     "email": email,
     "emailSubject": emailSubject
  },
  success: function(status){
      console.log("success",status);
  },
  error:function(error){
      console.log("error",error);
  },
})

還有我的 Java servlet:

@Component(service= Servlet.class,
        property={
                Constants.SERVICE_DESCRIPTION + "=Send Email of RoHS Search Results",
                "sling.servlet.methods=" + HttpConstants.METHOD_POST,
                "sling.servlet.paths="+ "/bin/abc/sendrohssearchresult"
        })
public class RohsEmailServlet extends SlingAllMethodsServlet {

    @Override
    protected void doPost(SlingHttpServletRequest request, SlingHttpServletResponse response) throws ServletException, IOException {
        String email = request.getParameter("email");
        String emailSubject = request.getParameter("emailSubject");
    }

}

我已經嘗試過我在 stackoverflow 上找到的其他解決方案,例如 JSONify 數據,刪除dataType: json ,並添加contentType: application/x-www-form-urlencoded; 字符集=UTF-8; 但仍然是相同的結果。 我正在使用 AEM。

正如@rakhi4110 提到的,我需要添加response.getWriter()以接收數據響應。 所以我補充說:

response.getWriter().write("Success Data");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM