おしえてください!
JavaのservletにNMHTTPコンポーネントで情報をPOSTメソッドで送ろうとしています。
PostDataパラメータがnullの時は正常な応答が返るのですが、
情報をパラメータにセットするとエラーで帰ってきます。
パラメータ名を送る必要があるようなのですが・・・
servletはrequest.detparameterで情報の受け取りをしてます。
HTMLでform action method="POST"でやれば情報を送れました。
他の方法でもかまいませんので、servletに情報を渡す方法をおしえてください。
tcpclientでポート80に接続し、直接POSTする手があります。
サーバに接続したら、
POST 対象となるURL HTTP/1.0
Content-Type: application/x-www-form-urlencoded
Pragma: no-cache
User-Agent: ユーザエージェント名
Host: 接続するホスト名
Content-Length: POSTするデータのバイト数
Proxy-Connection: Keep-Alive
ポストデータ・・・
のというようなヘッダを送ります。
必要に応じて、Accept-Languageなどのヘッダも追加して下さい。
ヘッダの解析に便利なツールが、
http://hidemaru.xaxon.co.jp/
にあります。
「横取り丸」と、「InetSpy」です。
解決しました。ありがとうございました!
PostDataパラメータに外部テキストファイル名とパスを指定して、
その中で パラメータ名=情報 で定義したらすんなりいけました。
NMHTTP.Post('http://XXX/servlet1','text.txt')
text.txtの中身
name=aaaa
にしのさん、解析ツールは落としてきたんでこれから直接POSTする方法も
ためしてみようと思います。ありがとうございました。
ツイート | ![]() |