- 締切済み
HttpURLConnectionを使ったHTTP
HttpURLConnectionを使ったHTTP通信について質問です。 POSTメソッドで、JSON形式のデータを送信しています。 送信先URLは自作のサーブレットです。 HTTP接続はできましたが、サーブレット側でJSON形式のデータをどのように取得すればよいかが分かりません。 JSON形式ではなく「p1=aaa&p2=bbb」のようなパラメータであれば、getParameter("p1")で取得できるのですが・・・ ソースの抜粋は以下の通りです。 <クライアント側>--------------------------------------------------- URL url = new URL("サーブレットのURL"); HttpURLConnection uc = (HttpURLConnection) url.openConnection(); uc.setDoOutput(true); uc.setRequestMethod("POST"); String postStr = "{\"id\": \"blog\"}"; OutputStream os = uc.getOutputStream(); PrintStream ps = new PrintStream(os); ps.print(postStr); ps.close(); InputStream is = uc.getInputStream(); ------------------------------------------------------------------- <サーブレット側>--------------------------------------------------- public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // ここでpostStr の内容を取得したい! } ------------------------------------------------------------------- JAVAの知識が浅いため、分かりにくい質問になっていたらすいません。 ご存知の方、よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
HTTPの仕様をよーく読んでみて下さい。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 JSON形式とはいえ、文字列には変わりありませんから postStr = "p={\"id\": \"blog\"}"; として、getParameter("p")で取得ではダメでしょうか。
お礼
ありがとうございます。 良い手段が見つからない場合は ご提案の方法で検討します。
お礼
ありがとうございます。 HTTPの仕様を見ても分からなかったので質問させてもらいました。 残念ながら参考URLは見れませんでしたが もう一度、HTTPの仕様を読んでみます。