您的位置:首页 > 理论基础 > 计算机网络

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

2016-07-02 18:45 615 查看
我们在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();
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息