FireFoxのPosterと呼ばれるアドオンを利用し、
リクエスト送信のテストをしてみました。
-
サーブレット
サーブレットはTestParamプロジェクトとして定義しておきます。
TestServletはTestというサーブレットマッピング名として定義しておきます。public class TestServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // リクエストの設定 request.setCharacterEncoding("UTF-8"); // ヘッダ部の取得 StringBuffer head = new StringBuffer(); Enumeration<String> headernames = request.getHeaderNames(); while (headernames.hasMoreElements()) { String name = headernames.nextElement(); Enumeration<String> headervals = request.getHeaders(name); while (headervals.hasMoreElements()) { String val = headervals.nextElement(); head.append(name); head.append(":"); head.append(val); head.append("\n"); } // ボディー部の取得 // メモ:Tomcatではrequest.getParameterとgetReaderが同時に使えない。 BufferedReader bufferReaderBody = new BufferedReader(request.getReader()); String body = bufferReaderBody.readLine(); // レスポンスの設定 response.setCharacterEncoding("UTF-8"); response.setContentType("text/hmtl"); // response.setContentType("application/json"); // ヘッダ部とボディー部の出力 PrintWriter out = response.getWriter(); out.println(head.toString()); out.println(body); } }
-
Poster
Request-URL:http://localhost:8080/TestJson/Test
Parametersタブ:Nameにtest、Valueにあいうえおを設定し、
Add/Changeボタンを押下する。
Content to Sendタブ:Body from Parametersボタンを押下する。
POSTボタンを押下する。サーブレットがJSONの読み取りに対応していれば、
ParametersタブのValueに以下を指定すると、JSONをリクエストで飛ばしたことになる。
{“name”: “John Smith”, “age”: 33}