【FireFox】【Poster】リクエスト送信テスト

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}