2

我正在尝试从 Android 向 ASP.NET Web API 发出 GET 请求。API 应该返回一个带有一些用户的 JSON 对象。从浏览器调用 API 时一切正常,但尝试从 Androind 应用程序调用时没有任何反应。我调查了 Fiddler 并没有发送任何请求。

这是我用来拨打电话的代码:

class GetData extends AsyncTask<String, String, String>{
        @Override 
        protected String doInBackground(String... params){
            HttpClient client = new DefaultHttpClient();
            HttpResponse response;
            try{
            HttpGet get = new HttpGet("http://10.0.2.2:38216/api/user");
            response = client.execute(get);
            if(response != null){
                InputStream inStream = response.getEntity().getContent();
                String message = convertToString(inStream);
                return message;
            }
        }
        catch(Exception exp){
            Log.d("Error message!", exp.toString());
        }
        return null;
    }
}

任何关于我做错的想法或提示将不胜感激!

4

1 回答 1

0

HttpClient 不会自动使用您可能在其他应用程序(例如,Web 浏览器)中配置的代理。您将需要通过DEFAULT_PROXY通过System.setProperty()forhttp.proxy*https.proxy*(在您的情况下http.proxy*,因为您没有使用 SSL)来教 HttpClient 。

于 2013-07-16T12:43:02.583 回答