0

http リクエストから単純な json ファイルを読みたいと思っています。これは私が読もうとしているURLです:

http://tccdahora.servehttp.com/teste.php

そのため、URL を JSON に変換する方法を取得しましたが、うまくいきません。さまざまな方法を試したり、ポストでヘッダーを取得したりしましたが、成功しませんでした。

これは方法です:

public static JSONArray getPostJSONObject(String url) throws Throwable {

    // faz o POST na pagina php e obtem o inputstream de resposta
    ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost(url); // "http://tccdahora.servehttp.com/teste.php"
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
    httppost.setHeader("host", url);
    //httppost.setHeader("Content-Type", "application/json");
    HttpResponse response = httpclient.execute(httppost);
    HttpEntity entity = response.getEntity();
    InputStream is = entity.getContent();

    // transforma o que o php printar em uma strigzona
    JSONArray jArray;
    BufferedReader reader = new BufferedReader(new InputStreamReader(
            is, "iso-8859-1"), 8);
    StringBuilder sb = new StringBuilder();
    sb.append(reader.readLine() + "\n");

    String line = "0";
    while ((line = reader.readLine()) != null) {
        sb.append(line + "\n");
    }
    is.close();
    String result = sb.toString();
    Log.e("", result);
    // transformando em uma array de objetos JSON
    jArray = new JSONArray(result);
    return jArray;
}

私が間違っていることはありますか?不正なリクエスト エラーが発生しました。投稿からの文字列は、ブラウザに表示される json ではなく、エラーを通知する HTML コードを返しています。

注意してくれてありがとう!

4

1 に答える 1

0

次の行を削除します。

httppost.setHeader("host", url);
于 2012-05-23T18:05:27.103 に答える