andriod中使用retrofit进行网络请求【实战】

andriod中使用retrofit进行网络请求【实战】

andriod中使用retrofit进行网络请求【实战】

一 Retrofit2是什么?

Android Retrofit2是一个安全的为AndroidJava开发的Http访问框架,它是对OkHttp的进一步封装,它对应的的git地址和官网如下:
github地址:https://github.com/square/retrofit
官网:http://square.github.io/retrofit/

二、Retrofit2能做啥?

不需要自己封装具体的Http请求,线程切换以及数据转换等等
接口统一配置定义,且通过注解的方式设置参数,代码清晰,便于维护管理
可以与RxJava很轻松的关联使用
通过添加各种转换类,能讲response直接转换为需要的对象。

三、实战操作

在你的项目的build.gradle中dependencies区块下加入以下

    compile 'com.squareup.retrofit:retrofit:2.0.0-beta2'
    compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'

然后点击同步按钮

andriod中使用retrofit进行网络请求【实战】

如果没有报错,就表示同步成功了

我们现在又一个接口是这样的

http://www.bfw.wiki/Test/Login.html

通过post传递用户名与密码进行登录,post参数为username与userpwd

请求返回的数据格式为json

{"status":"201","data":"\u7528\u6237\u540d\u5bc6\u7801\u4e0d\u5bf9"}

status如果为200,表示登录成功,201表示出错,data就是提示的内容

那么怎么通过retrofit来获取我们所需要的数据呢

先建一个返回的数据实体类RetData。

package bfw.wiki.api;

public class RetData {
    private String status;
    private String data;

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getData() {
        return data;
    }

    public void setData(String data) {
        this.data = data;
    }...

点击查看剩余70%

{{collectdata}}

网友评论0