0

私は簡単なコードを持っています:

URL url;
BufferedReader in = null;
HttpURLConnection connection;
InputStream is = null;
InputStreamReader br = null;
setProgressTitle(progress, context.getString(R.string.loading));
setProgressMessage(progress, context.getString(R.string.loading_from_internet));
try {
    url = new URL(urlStr);
    connection = (HttpURLConnection) url.openConnection();
    connection.setConnectTimeout(Const.TIMEOUT); 
    is = connection.getInputStream();
    ...

urlStr = "http://samlib.ru/w/waliduda_a_a/molochnischituran1.shtml" がある場合 - すべて正常に動作します。urlStr = "http://samlib.ru/cgi-bin/areader?q=jlist" のような URL を使用すると、connection.getInputStream(); でエラーが発生しました。

** 03-04 15:37:52.459: エラー/DataReader::loadDataFromInet(17281): http://samlib.ru/cgi-bin/areader?q=jlistの読み込みに失敗しました 03-04 15:37:52.459: エラー/DataReader::loadDataFromInet(17281): java.io.FileNotFoundException: http://samlib.ru/cgi-bin/areader?q=jlist 03-04 15:37:52.459: エラー/DataReader::loadDataFromInet(17281) : org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:521) で**

同様の URL にデータをアップロードするにはどうすればよいですか?

4

2 に答える 2

0

cgi-bin/areader が見つからないようです。HTTP/404 応答コードを取得する:

wget http://samlib.ru/cgi-bin/areader?q=jlist
--2011-03-04 09:03:17--  http://samlib.ru/cgi-bin/areader?q=jlist
Resolving samlib.ru... 81.176.66.171
Connecting to samlib.ru|81.176.66.171|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2011-03-04 09:03:17 ERROR 404: Not Found.

それを修正してから、もう一度やり直してください。

于 2011-03-04T14:02:09.640 に答える
0

これにはいくつかの理由が考えられます。私が個人的に見たのは、後でリダイレクトされた URL を入力したときで、HttpURLConnection はそれを処理しません。私はあなたと同じ反応を得ました、私はFFでそれを打ちました、そしてそれはうまくいきます。また、受信側である種のブラウザ スニッフィングが行われる可能性もあります。

幸運を!

于 2011-03-04T16:06:55.753 に答える