2016-10-29 3 views
0

ボタンを押すとHTTPServletにデータを返そうとしています。 最後に、私の目標はJSONデータを返信することですが、今のところ、文字列を返送しようとしています。jQueryのAjaxを使用してHTTPServletに文字列を送信する:リクエストが空です。

ボタンをクリックすると、リクエストデータが空であるために私のサーバが「空」を表示します。私はここで何が欠けていますか?

私はJavaScript:

$("#saveThis").click(function(e) 
{ 
    $.post("clientserver", { 
     "loadProds": 1, 
     "test": "Hello" 
    }); 
}); 

そして、私のサーブレット:

@WebServlet(urlPatterns= {"/clientserver"}) 
public class SayHelloServlet extends HttpServlet 
{ 
    @Override 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
    { 
     if(request.getParameter("saveThis") != null) 
     { 
      String json = request.getParameter("test"); 
      System.out.print(json); 
     } else 
     { 
      System.out.print("Empty"); 
     } 
    } 
} 

答えて

0

あなたはPOSTリクエストを作っているので、データは要求ではなく、パラメータの本体になります。

request.getReader() 

または::

request.getInputStream() 

をJavaコードでのリクエストボディをつかむために

を使用してみてください。

+0

ありがとうございます – Soshiribo

関連する問題