0

ここでドキュメントを見ています:http://docs.oracle.com/javase/7/docs/api/java/net/URLConnection.html

リクエストにPOSTメソッドとしてフラグを立てるオプションが表示されません。何か見たいと思い.setRequestMethod("POST");ます。間違ったドキュメントを見ていますか?

私はAndroid4.2とJava1.6を使用しています。javase/1.4.2それが私が探しているべきものであるかどうかはわかりませんが。

URL url = new URL(this.getUrl());
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
connection.setRequestProperty("charset", "utf-8");
connection.setRequestProperty("Content-Length", "" + Integer.toString(urlParameters.getBytes().length));
connection.setUseCaches (false);
4

2 に答える 2

1

URLConnectionの代わりにHTTPURLConnectionを使用する必要があります。

HTTPURLConnectionにはsetRequestMethodがあります

例:

HttpURLConnection connection = (HttpURLConnection) url.openConnection();

注:古いバージョンの代わりに最新のjavadocを使用することをお勧めします。1.4は、かなり古いバージョンのjavaです。

クレジットはLuigiR.Viggianoに送られます:

上記の私の答えは、アクセス方法を扱っていますsetRequestMethod。setRequestMethodを使用したくないが、POSTを達成する場合は、Luigiが提案したように、呼び出しを無視して、を setRequestMethod設定するだけですsetDoOutput(true)。詳細については、このチュートリアルをお読みください。

于 2012-12-31T16:44:51.410 に答える
0

あなたはこれを使うことができます、あなたは私が投稿したものよりもすでに多くのオプションを持っています

HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, TIMEOUT_MILLIS);
HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT_MILLIS);
HttpClient client = new DefaultHttpClient(httpParams);

HttpUriRequest request = new HttpPost(serverUrl);
于 2012-12-31T16:53:20.370 に答える