博客
关于我
Android网络请求开源框架retrofit的基本GET用法(2.4版本)
阅读量:524 次
发布时间:2019-03-08

本文共 5816 字,大约阅读时间需要 19 分钟。

1.先在gradle配置retrfit版本如下:

//rxjava/retrofit相关引入    compile 'io.reactivex.rxjava2:rxandroid:2.0.2'    compile 'io.reactivex.rxjava2:rxjava:2.1.12'    compile 'com.squareup.retrofit2:retrofit:2.4.0'    compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'    compile 'com.squareup.okhttp3:logging-interceptor:3.8.0'

2.写一个接口,配置网络请求地址参数等

public interface WalletService {    /**     * 获取优惠信息的接口     * @return 返回值     */    @GET("/tools/mockapi/3191/favourable")//配置的get请求    Call
getFavourable();}

3.开启请求

Retrofit retrofit = new Retrofit.Builder()                .baseUrl("http://www.wanandroid.com")                .addConverterFactory(new Converter.Factory() {                    @Nullable                    @Override                    public Converter
responseBodyConverter(Type type, Annotation[] annotations, Retrofit retrofit) { return new Converter
() { @Override public String convert(ResponseBody value) throws IOException { return value.string(); } }; } }) .build(); WalletService service = retrofit.create(WalletService.class); Call
favourable = service.getFavourable(); favourable.enqueue(new Callback
() { @Override public void onResponse(Call
call, Response
response) { String message = response.body(); Log.e("打印返回的json数据",message); } @Override public void onFailure(Call
call, Throwable t) { //请求失败的处理 } });

4.看下完整的请求地址:

http://www.wanandroid.com/tools/mockapi/3191/favourable

5.这是用retorfit请求到的json数据:

{    "data": [        {            "activity1": "美珍香满50减15",            "activity2": "美珍香满45.5元购50元代金券",            "bankType": "招行",            "businessType": "生活|",            "distance": "27m",            "message": "美珍香(北京来福土店)",            "money": "人均¥34",            "payType": "银联"        },        {            "activity1": "粗娘人家满100减35",            "activity2": "粗娘人家80元购35元代金券",            "bankType": "建行",            "businessType": "美食|",            "distance": "35m",            "message": "粗娘人家(朝阳门店)",            "money": "人均¥128",            "payType": "银联"        },        {            "activity1": "燕窝楼满200减55",            "activity2": "燕窝楼135元购75元代金券",            "bankType": "交行",            "businessType": "美食|",            "distance": "42m",            "message": "燕窝楼满(朝阳门店)",            "money": "人均¥98",            "payType": "银联"        },        {            "activity1": "味多美满70减15",            "activity2": "味多美满25元购5元代金券",            "bankType": "工行",            "businessType": "面包蛋糕|",            "distance": "47m",            "message": "味多美满(朝阳门店)",            "money": "人均¥78",            "payType": "银联"        },        {            "activity1": "良品铺子满50减15",            "activity2": "良品铺子73元购27元代金券",            "bankType": "农行",            "businessType": "零食|",            "distance": "52m",            "message": "良品铺子(朝阳门店)",            "money": "人均¥68",            "payType": "银联"        },        {            "activity1": "酸奶网满30减11",            "activity2": "酸奶网26元购7元代金券",            "bankType": "邮政",            "businessType": "零食|",            "distance": "55m",            "message": "酸奶网(朝阳门店)",            "money": "人均¥39",            "payType": "银联"        },        {            "activity1": "万龙州海鲜满79减31",            "activity2": "万龙州海鲜298元购65元代金券",            "bankType": "浦发",            "businessType": "海鲜|",            "distance": "63m",            "message": "万龙州海鲜(朝阳门店)",            "money": "人均¥197",            "payType": "银联"        },        {            "activity1": "抹茶奶满25减9",            "activity2": "抹茶奶66元购13元代金券",            "bankType": "平安",            "businessType": "生活|",            "distance": "69m",            "message": "抹茶奶海鲜(朝阳门店)",            "money": "人均¥23",            "payType": "银联"        },        {            "activity1": "燕窝楼满200减55",            "activity2": "燕窝楼135元购75元代金券",            "bankType": "交行",            "businessType": "美食|",            "distance": "76m",            "message": "燕窝楼满(朝阳门店)",            "money": "人均¥98",            "payType": "银联"        },        {            "activity1": "味多美满70减15",            "activity2": "味多美满25元购5元代金券",            "bankType": "工行",            "businessType": "面包蛋糕|",            "distance": "79m",            "message": "味多美满(朝阳门店)",            "money": "人均¥78",            "payType": "银联"        },        {            "activity1": "良品铺子满50减15",            "activity2": "良品铺子73元购27元代金券",            "bankType": "农行",            "businessType": "零食|",            "distance": "86m",            "message": "良品铺子(朝阳门店)",            "money": "人均¥68",            "payType": "银联"        },        {            "activity1": "酸奶网满30减11",            "activity2": "酸奶网26元购7元代金券",            "bankType": "邮政",            "businessType": "零食|",            "distance": "96m",            "message": "酸奶网(朝阳门店)",            "money": "人均¥39",            "payType": "银联"        },        {            "activity1": "万龙州海鲜满79减31",            "activity2": "万龙州海鲜298元购65元代金券",            "bankType": "浦发",            "businessType": "海鲜|",            "distance": "127m",            "message": "万龙州海鲜(朝阳门店)",            "money": "人均¥197",            "payType": "银联"        },        {            "activity1": "抹茶奶满25减9",            "activity2": "抹茶奶66元购13元代金券",            "bankType": "平安",            "businessType": "生活|",            "distance": "145m",            "message": "抹茶奶(朝阳门店)",            "money": "人均¥23",            "payType": "银联"        }    ],    "returnMessage": "请求成功",    "returnCode": "200"}

 

转载地址:http://srmnz.baihongyu.com/

你可能感兴趣的文章
MySql的Delete、Truncate、Drop分析
查看>>
MySQL的Geometry数据处理之WKB方案
查看>>
MySQL的Geometry数据处理之WKT方案
查看>>
mysql的grant用法
查看>>
Mysql的InnoDB引擎的表锁与行锁
查看>>
mysql的InnoDB引擎索引为什么使用B+Tree
查看>>
MySQL的InnoDB默认隔离级别为 Repeatable read(可重复读)为啥能解决幻读问题?
查看>>
MySQL的insert-on-duplicate语句详解
查看>>
mysql的logrotate脚本
查看>>
MySQL的my.cnf文件(解决5.7.18下没有my-default.cnf)
查看>>
MySQL的on duplicate key update 的使用
查看>>
MySQL的Replace用法详解
查看>>
mysql的root用户无法建库的问题
查看>>
mysql的sql_mode参数
查看>>
MySQL的sql_mode模式说明及设置
查看>>
mysql的sql执行计划详解
查看>>
mysql的sql语句基本练习
查看>>
Mysql的timestamp(时间戳)详解以及2038问题的解决方案
查看>>
mysql的util类怎么写_自己写的mysql类
查看>>
MySQL的xml中对大于,小于,等于的处理转换
查看>>