okttp的get异步和同步 post的异步简单使用情况
2018-03-08 14:20
459 查看
package com.example.day12okhttp; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import java.io.IOException; import okhttp3.Call; import okhttp3.Callback; import okhttp3.FormBody; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; //第一步在build里面添加依赖添加到modul里面 //第二部创建okhttpclient 客户端对象 public class MainActivity extends AppCompatActivity { String url ="http://www.meirixue.com/api.php?c=index&a=index"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } //okhttp get同步请求网络 public void get(View v){ new Thread(){ @Override public void run() { super.run(); //创建客户端对像 OkHttpClient client = new OkHttpClient(); //request 里面我们可以做一些请求的地址,请求方式, Request request = new Request.Builder() .url(url) .build(); //去请求网络网络 okhttp有同步请求和异步请求 execute enqueue异步请求 try { //从服务器端返回的response Response response = client.newCall(request).execute(); //从服务器返回的json字符串 String json = response.body().string(); Log.e("MainActivity",json); } catch (IOException e) { e.printStackTrace(); } } }.start(); } //get异步请求 public void getyi(View v){ new Thread(){ @Override public void run() { super.run(); OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url(url) .build(); try { client.newCall(request).enqueue(new Callback() { //请求失败 @Override public void onFailure(Call call, IOException e) { } //请求成功 @Override public void onResponse(Call call, Response response) throws IOException { String json = response.body().string(); Log.e("aaaaaa",json); } }); } catch (Exception e) { e.printStackTrace(); } } }.start(); } //post请求 public void postyi(View v){ String url ="https://www.zhaoapi.cn/user/login"; OkHttpClient client = new OkHttpClient(); FormBody formBody = new FormBody.Builder() .add("mobile", "15715317583") .add("password", "123456") .build(); Request request = new Request.Builder() .url(url) .post(formBody) .build(); client.newCall(request).enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { } @Override public void onResponse(Call call, Response response) throws IOException { String json = response.body().string(); Log.e("aaaaaa",json); } }); } }
相关文章推荐
- ajax 实现 GET POST 异步 同步 检验mysql连接情况简单实例
- okHttpClient异步同步的get和post请求方法
- UIday1601:网络编程 GET POST 的同步或异步请求,服务器接口的简单介绍。
- OKHTTP的get和post的同步使用和异步使用
- Okhttp2同步,异步 get,post
- C#、Asp.net 使用 WebClient Get Post(同步、异步)
- IOS网络篇10之NSURLConnection的使用(同步异步下载getpost)
- iOS网络篇---使用NSConnection 实现post和get发送和接收(同步和异步模式)
- iOS网络请求总结、GET、POST、同步、异步代码块、异步代理、第三方AFNetWorking2.0使用
- 判断用户的请求类型 get or post 然后同步 或者 异步 执行 方法
- HTTP协议中POST、GET、HEAD的区别是什么?分别在什么情况下使用?
- IOS开发之NSURL网络请求,同步异步,GET,POST
- IOS之同步请求、异步请求、GET请求、POST请求(转)
- IOS之同步请求、异步请求、GET请求、POST请求
- [置顶] 判断用户的请求类型 get or post 然后同步 或者 异步 执行 方法
- IOS之同步请求、异步请求、GET请求、POST请求
- 同步和异步有何异同,在什么情况下分别使用他们?
- iOS 网络编程(HTTP 同步GET请求,同步POST请求,异步GET请求,异步POST请求)
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求