通过Android的okhttp接口访问网络接口

由于业务需求,需要对已发布的系统做一些功能检测,在前辈的指导下使用Android的okhttp3接口实现了工作需要,以下是代码:
项目使用springboot + gradle 布局,首先需要在build.gradel中添加依赖
implementation ‘com.squareup.okhttp3:okhttp:3.10.0’
compile group: ‘com.google.code.gson’, name: ‘gson’, version: ‘2.8.5’
其中okhttp3用来访问接口,gson用来转换json成对象

    String TOKEN = "";     //创建okhttp对象    OkHttpClient okHttpClient = new OkHttpClient.Builder()            .connectTimeout(2, TimeUnit.MINUTES)            .readTimeout(2, TimeUnit.MINUTES)            .build();                //创建请求体    String bodyStr = "{\"searchvalue\":\"" + materielCode + "\"}";    String urlStr = "接口的地址";    RequestBody body = RequestBody.create(MediaType.parse("application/json; charset=utf-8")            , bodyStr);    Request request = new Request.Builder().addHeader("Authorization", TOKEN)            .url(urlStr)            .post(body)            .build();    //创建响应体    Response response = null;    String responseStr = null;    try {        response = okHttpClient.newCall(request).execute();        responseStr = response.body().string();    } catch (IOException e) {        e.printStackTrace();    }

以上是post的请求方法;

    //创建okhttp对象    OkHttpClient okHttpClient = new OkHttpClient.Builder()            .connectTimeout(2, TimeUnit.MINUTES)            .readTimeout(2, TimeUnit.MINUTES)            .build();    //创建请求体    String urlStr = "" ;    Request request = new Request.Builder().addHeader("Authorization", TOKEN)            .url(urlStr)            .build();    //创建响应体    Response response = null;    String responseStr = null;    try {        response = okHttpClient.newCall(request).execute();        responseStr = response.body().string();    } catch (IOException e) {        e.printStackTrace();    }

以上是get请求对象;

         Gson gson = new Gson();        Type materielCodeType = new TypeToken>() {        }.getType();        List materiels = (List) gson.fromJson(materielJsons.toString(), materielCodeType);

以上是json转对象;

更多相关文章

  1. Android接口和框架学习
  2. Android http请求使用接口回调
  3. Intent传递对象的两种方法(Serializable,Parcelable)

随机推荐

  1. Android(安卓)10.0文件存储问题
  2. 视频教程-Matplotlib 数据分析可视化-Pyt
  3. 重回菜地。。记录解决android ndk在ubunt
  4. Android(安卓)OpenGL ES 2.0 手把手教学(2
  5. The import android.* cannot be resolve
  6. Error: Error parsing D:\new_android\
  7. Android(安卓)Transition——提高一点点
  8. 关于Android中ListView嵌套GridView的问
  9. android 耳机按钮监听
  10. 【转】windowSoftInputMode属性详解