Android网络框架-OkHttp使用
2017-01-22 11:14
375 查看
1、GET请求步骤
1、引入okhttp的依赖compile 'com.squareup.okhttp3:okhttp:3.5.0'
同步,自动会下载okhttp依赖的jar
2、在MainActivity添加doGet方法
步骤:
(1)拿到okHttpClient对象
(2)构造Request
(3)将Request封装为Call
(4)执行call
//使用okHttp访问一个网站 public void doGet(View view) throws IOException { //okHttpClient相当与一个全局的执行者(配置了请求的相关信息,执行请求的动作) OkHttpClient okHttpClient=new OkHttpClient(); //发起一个请求,因为基于构造模式,所以是Builder Request.Builder builder=new Request.Builder(); //访问url指定的网址,返回Request Request request = builder.get().url("http://www.csdn.net/").build(); //将request传入okHttpClient,访问call Call call = okHttpClient.newCall(request); //1、直接执行 Response response=call.execute(); //2、异步执行,加入队列,异步得提供回调的接口 call.enqueue(new Callback() { @Override//产生错误的时候回调 public void onFailure(Call call, IOException e) { //打印错误信息 L.e("onFailure:"+e.getMessage()); e.printStackTrace(); } @Override public void onResponse(Call call, Response response) throws IOException { L.e("onResponse:"); //通过response获取相关信息,转换为String String string = response.body().string(); //打印 L.e(string); } }); }
加入网络访问权限
4000
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
点击GET按钮
现在把信息获取在Android应用上
public void onResponse(Call call, Response response) throws IOException { L.e("onResponse:"); //通过response获取相关信息,转换为String final String string = response.body().string(); //打印 // L.e(string); runOnUiThread(new Runnable() { @Override public void run() { tv_get.setText(string); } }); }
网络访问框架,设置超时时间发生错误可以去retry,这些办法一般在全局的执行者里面
2、前后端交互
1、搭建服务器相关文章推荐
- Android网络框架-OkHttp使用
- android-async-http网络框架的使用
- Android中贼好用的网络框架----OkHttp
- android网络请求框架的学习之路——浅谈对Volley,OkHttp,Retrofit的了解与对比
- Android 访问网络框架之——OkHttp框架的解析
- Android框架之路——OKHttp的使用
- 使用android-async-http来封装Android网络请求框架
- Android从零开搞系列:网络框架系列(1)OkHttp+可测试的服务器URL+Gson分析(上)
- Android网络框架之----OKHttp简单二次封装
- Android网络请求框架之——okhttp3
- Android-网络框架01OKHttp3
- Android中android-async-http开源网络框架的简单使用
- Android_访问网络三(android-async-http框架的简单使用)
- Android网络请求框架—OKHttp 源码解析
- Android网络请求框架:Android-async-http简单使用
- 【已解决】使用android-async-http网络请求框架出现Header[]不识别错误的解决办法
- android 网络框架解析--OKHttp
- Android网络框架httplite使用指南
- Android 网络框架(Android-async-http,OKHttp,retrofit,volley,xUtils,Afinal)
- Android从零开搞系列:网络框架系列(2)OkHttp+POST图片(下)