0

Androidからwcf Webサービスを呼び出そうとしていますが、応答ストリームを読んでいるときに得たのはこれだけです

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
\n<HTML>
<HEAD><TITLE>Bad Request</TITLE>
\n<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
\n<BODY><h2>Bad Request - Invalid Hostname</h2>
\n<hr><p>HTTP Error 400. The request hostname is invalid.</p>
\n</BODY></HTML>\n

これが私のクライアント側です

String result = "";
    String url ="http://10.0.2.2:81/WScom.svc/GetUserList";
    InputStream is = null;
    try {

        HttpClient httpclient = new DefaultHttpClient();

        HttpPost httppost = new HttpPost(url);


        httppost.setHeader("Accept", "application/json");
        httppost.setHeader("Content-Type", "application/json");


        HttpResponse response = httpclient.execute(httppost);

        HttpEntity entity = response.getEntity();

        is = entity.getContent();

    } catch (Exception e) {
        result = e.toString();
    }

    try {
    BufferedReader reader = null;
    StringBuilder sb = new StringBuilder();

    reader = new BufferedReader(new InputStreamReader(is));
    String line = "";
    while ((line = reader.readLine()) != null) {
        sb.append(line + "\n");
        //System.out.println(line);
    }

    result = sb.toString();

        is.close();
    } 
    catch (Exception e) {

        result = e.toString();
    }
    return (result);
}       

ただし、ブラウザにリンクを貼り付けると(もちろん、Androidエミュレータの要件により、10.0.2.2ではなくlocalhostを使用して)、完全なjson結果が表示されます。助けてください。

4

0 に答える 0