我絕對把我的頭髮撕掉了。Java .setRequestMethod()中的HTTP POST請求沒有任何作用
我想在Java中發出一個HTTP POST請求,但它不斷髮送它作爲GET。我採用了幾種不同的方式發送POST請求,但所有這些方式都只是以GET方式發送。
這是我目前有:
URL url = new URL("https://api.soundcloud.com/oauth2/token");
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(data);
wr.close();
// Get the response
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = rd.readLine()) != null) {
resp += line;
}
rd.close();
我就在計算器上那個conn.setDoOuput(真)應該自動進行連接的POST一個職位閱讀;然而,當我通過代碼進行調試時,受保護的成員conn.method保持爲GET。
我也試着將url.openConnection()作爲一個HttpURLConnection並在其上調用.setRequestMethod(「POST」),它完全沒有改變conn.method。
作爲獎勵,我試圖做soundcloud身份驗證,基本上我認爲這樣做的每種方式都是徹底的失敗......也許有人有更好的解決方案呢?
可能發生的重複[發送HTTP POST請求在Java](http://stackoverflow.com/questions/3324717/sending-http-post-request-in-java) – 2012-03-02 05:06:41
您可以看到一個POST示例在這裏:http://stackoverflow.com/questions/9508606/how-to-authenticate-against-website-using-apache-httpclient-4-2-1-or – alfasin 2012-03-02 05:16:00
這些都沒有回答我的問題...什麼特別我在做黃?我曾嘗試將其明確設置爲「POST」方法,但仍然無效。 – kand 2012-03-02 05:34:46