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

http请求开源框架: AsyncHttpClient

2013-10-15 21:03 459 查看
同步/异步:
同步: 在同一个线程里面执行的.

异步:开启新的线程

1.GET获取服务器信息:
public class MainActivity extends Activity
{
[align=left]      [/align]
[align=left]      private TextView  tv_code;[/align]
[align=left]
[/align]
[align=left]      @Override[/align]
      protected void onCreate(Bundle
savedInstanceState) {
[align=left]             super.onCreate(savedInstanceState);[/align]
[align=left]            setContentView(R.layout. activity_main);[/align]
[align=left]            [/align]
             tv_code=(TextView)
findViewById(R.id. tv_code);
[align=left]      }[/align]
[align=left]      [/align]
[align=left]      [/align]
[align=left]      /**[/align]
[align=left]       * Button触发事件[/align]
[align=left]       */[/align]
      public void 
click(View view){
[align=left]            [/align]
[align=left]             //创建AsyncHttpClient对象[/align]
[align=left]            AsyncHttpClient  client= new AsyncHttpClient();[/align]
[align=left]            [/align]
[align=left]            client.get( "http://www.baidu.com",new AsyncHttpResponseHandler(){[/align]
[align=left]
[/align]
[align=left]                   @Override[/align]
                   public void onSuccess(String
content) {
[align=left]                         super.onSuccess(content);[/align]
[align=left]                         tv_code.setText(content);[/align]
[align=left]                  }[/align]
[align=left]
[/align]
[align=left]                   @Override[/align]
                   public void onFailure(Throwable
error, String content) {
                    super.onFailure(error,
content);
                    Toast. makeText(getApplicationContext(), "获取失败.....",
0).show() ;
[align=left]                    error.printStackTrace();[/align]
[align=left]                  }[/align]
[align=left]                  [/align]
[align=left]              });[/align]
[align=left]            [/align]
[align=left]      }[/align]
[align=left]      [/align]
[align=left]}[/align]
[align=left]
[/align]
[align=left][/align]
[align=left]-------------------------------------------------------------------------------------------------[/align]
[align=left][/align]
[align=left][/align]
[align=left]2.Get/Post请求提交数据到服务器[/align]
[align=left]
[/align]

public class LoginService
{
[align=left]      [/align]
[align=left]      /**[/align]
[align=left]       * GET方法获取服务器信息[/align]
[align=left]       * @param context[/align]
[align=left]       * @param userName[/align]
[align=left]       * @param passWord[/align]
[align=left]       */[/align]
      public static void loginByGet( final Context
context,String userName,String passWord){
[align=left]            [/align]
[align=left]            String path= "http://192.168.1.8/Web/LoginServlet?userName=" +URLEncoder. encode(userName)+ "&passWord=" +URLEncoder. encode(passWord);[/align]
[align=left]            [/align]
[align=left]            [/align]
[align=left]             //创建AsyncHttpClient对象[/align]
[align=left]            AsyncHttpClient  client= new AsyncHttpClient();[/align]
            client.get(path, new 
AsyncHttpResponseHandler(){
[align=left]                   @Override[/align]
                   public void onSuccess(String
content) {
[align=left]                         super.onSuccess(content);[/align]
                        Toast. makeText(context, "请求成功",
0).show();
[align=left]                  }[/align]
[align=left]                  [/align]
[align=left]                   @Override[/align]
                   public void onFailure(Throwable
error, String content) {
                     super.onFailure(error,
content);
                     Toast. makeText(context, "请求失败",
0).show();
[align=left]                      error.printStackTrace();  //打印失败信息[/align]
[align=left]                  }[/align]
[align=left]                  [/align]
[align=left]                  [/align]
[align=left]            });[/align]
[align=left]            [/align]
[align=left]      }[/align]
[align=left]
[/align]
[align=left]      /**[/align]
[align=left]       * POST方法提交数据到服务器[/align]
[align=left]       * @param context[/align]
[align=left]       * @param userName[/align]
[align=left]       * @param passWord[/align]
[align=left]       */[/align]
      public static void 
 ( final Context context,String userName,String
passWord){
[align=left]            [/align]
[align=left]            String path= "http://192.168.1.8/Web/LoginServlet";[/align]
[align=left]            [/align]
[align=left]             //创建AsyncHttpClient对象[/align]
[align=left]            AsyncHttpClient  client= new AsyncHttpClient();[/align]
[align=left]            [/align]
[align=left]            RequestParams  paramsnew RequestParams();  //创建信息提交者[/align]
            params.put( "userName",
userName);
            params.put( "passWord",
passWord);
[align=left]            [/align]
[align=left]            client.post(path, params,new AsyncHttpResponseHandler(){[/align]
[align=left]                  [/align]
[align=left]                   @Override[/align]
                   public void onSuccess(String
content) {
[align=left]                         super.onSuccess(content);[/align]
                        Toast. makeText(context, "提交成功...",
0).show();
[align=left]                  }[/align]
[align=left]                  [/align]
[align=left]                   @Override[/align]
                   public void onFailure(Throwable
error, String content) {
                      super.onFailure(error,
content);
                      Toast. makeText(context, "提交失败",
0).show();
[align=left]                      error.printStackTr ace();   //打印错误信息[/align]
[align=left]                  }[/align]
[align=left]                  [/align]
[align=left]                  [/align]
[align=left]            });[/align]
[align=left]            [/align]
[align=left]            [/align]
[align=left]      }[/align]
[align=left]      [/align]
[align=left]
[/align]
[align=left]}[/align]

[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: