使用开源框架android-async-http提交数据

来源:互联网 发布:网络图片 拍摄时间 编辑:程序博客网 时间:2024/05/21 07:13

我们在github上搜索android async http即可找到开源项目android-async-http,下载下来拷贝到项目中。该项目更多用于post提交请求。地址是:https://github.com/loopj/android-async-http.git

使用开源框架get的方式提交数据到服务器

分两步:
1. 实例化一个AsyncHttpClient对象client;
2. 调用client的get方法。
代码如下所示:

        AsyncHttpClient client = new AsyncHttpClient();        client.get(path, new AsyncHttpResponseHandler() {            @Override            public void onSuccess(int statusCode, Header[] headers,                    byte[] responseBody) {                tv_status.setText(new String(responseBody));            }            @Override            public void onFailure(int statusCode, Header[] headers,                    byte[] responseBody, Throwable error) {                tv_status.setText("http请求失败"+new String(responseBody));            }         });

使用开源框架post的方式提交数据到服务器

分三步:
1. 实例化一个AsyncHttpClient对象client;
2. 设置请求参数;
3. 调用client的post方法。
代码如下所示:

        AsyncHttpClient client = new AsyncHttpClient();        RequestParams params = new RequestParams();        params.put("qq", qq);        params.put("pwd", pwd);        client.post(path, params, new AsyncHttpResponseHandler(){            @Override            public void onSuccess(int statusCode, Header[] headers,                    byte[] responseBody) {                tv_status.setText("登陆结果:"+new String(responseBody));            }            @Override            public void onFailure(int statusCode, Header[] headers,                    byte[] responseBody, Throwable error) {                tv_status.setText("请求失败请检查网络");            }        });

使用开源框架上传文件到服务器

分三步:
1. 实例化一个AsyncHttpClient对象client;
2. 设置请求参数为要上传的文件;
3. 调用client的post方法。
代码如下所示:

        AsyncHttpClient client = new AsyncHttpClient();        RequestParams params = new RequestParams();        try {            params.put("file", file);        } catch (FileNotFoundException e) {            e.printStackTrace();        }        client.post("http://192.168.1.103:8080/web/UploadServlet", params, new AsyncHttpResponseHandler() {            @Override            public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {                Toast.makeText(MainActivity.this, "上传成功", 0).show();            }            @Override            public void onFailure(int statusCode, Header[] headers,                    byte[] responseBody, Throwable error) {                Toast.makeText(MainActivity.this, "上传失败", 0).show();            }        });
0 0
原创粉丝点击