私はこのコードを持っており、ウェブサイトのフォームに記入して提出したいと思っています。提出するキーと値はどのようにして見つけられますか?私はこのコードを持っていますが、HTTP POSTリクエストを送信するはずですが、 "key1"と "value1"の代わりに何を入れるべきか、 "key2"と "value2" :httpリクエストを送信したい場合は、Javaでoutputstreamを使用して何を書きますか?
public String sendPostRequest(String url) {
StringBuffer sb = null;
try {
String data = URLEncoder.encode("key1", "UTF-8") + "="
+ URLEncoder.encode("value1", "UTF-8");
data += "&" + URLEncoder.encode("key2", "UTF-8") + "="
+ URLEncoder.encode("value2", "UTF-8");
URL requestUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection) requestUrl
.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("POST");
OutputStreamWriter osw = new OutputStreamWriter(
conn.getOutputStream());
osw.write(data);
osw.flush();
BufferedReader br = new BufferedReader(new InputStreamReader(
conn.getInputStream()));
String in = "";
sb = new StringBuffer();
while ((in = br.readLine()) != null) {
sb.append(in + "\n");
}
osw.close();
br.close();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return sb.toString();
}
このコードの動作レプリカのサンプルサイトを教えてもらえますか? (key1/key2とvalue1/value2が機能するものに置き換えられました)
もっと良いキー/値を追加することができます。異なるサイトごとに何を記入するかを知る方法はわかりません。
HTTPライブラリを使用しない理由は何ですか? –
私は文字列 "data"に何を挿入すればよいか分かっていれば、このコードがうまく動作するので、外部ライブラリを使用したくないのです。 – ZimZim
試して、テストし、最適化されたコードを他の場所から使いたくないのはなぜですか?このポリシーをすべての問題に適用しますか?そこには多くの*本当に良いJavaライブラリがあります - ここでは "発明されていない"シンドロームを避けてください。 –