
功能列表
1.默认支持GET,POST,DELETE,PUT请求方式
2.默认支持JSON Body请求方式
可自定义请求客户端
可扩展请求方式
5.支持中间件
6.支持路径替换
7.支持数据缓存
8.。。。。。
使用教程
获取Glin
在你的gradle产出中添加如下编译
编译' org.loader:glin:2.2 '
如果你不想花时间定制网络请求方式,可使用我提供的OkClient,添加方法如下
编译' org.loader:glin-okclient:2.2 '
注意:如果使用Glin2.2,glin-okclient就必须使用2.2以上

自定*解义**析类
1,通过继承Parser 类来实现项目的数据解析类,通常情况下需要实体类和列表类解析两种
-
获取项目源码,项目讲解,知识点分享,学习交流,那就加入小编的Java学习交流群吧!
-
616 959 444
2,继承通过ParserFactory 将上面实现的两个解析类告诉GLIN
例子:



配置Glin
private static final LogHelper.LogPrinter logPrinter = new LogHelper.LogPrinter() {
@Override
public void print(String tag, String content) {
Log.d(tag, content);
}
};
//....
Glin glin = new Glin.Builder()
.client(new OkClient())
.baseUrl("http://exampile.com") // the basic url
.logChanNode(new LogChanNode(true, logPrinter)) // log printer
.parserFactory(new FastJsonParserFactory()) // your parser factory
.cacheProvider(new DefaultCacheProvider(Environment.getExternalStorageDirectory() + "/test/", 2000)) // use default cacheProvider
.timeout(10000) // timeout in ms
.build();
创建网络访问接口

访问网络

高级用法
get 请求
@GET("/info")
Call<User> getUser(@Arg("username") String name);
post 请求
@POST("/info")
Call<User> getUser(@Arg("username") String name);
delete 请求
@DEL("/info")
Call<User> deleteUser(@Arg("username") String name);
put 请求
@PUT("/info")
Call<User> putUser(@Arg("username") String name);
json 请求
@JSON("/info")
Call<User> getUser(String name);
添加 url path
@GET("/info/{:name}/{:age}")
Call<User> getUser(@Path("name") String name, @Path("age") int age);
中间件支持
自定义中间件
继承ChanNode类, 实现自定义中间件, 实现run(Context ctx)方法, 在run方法里调用next()方法使流程继续. 通过调用Call的before(ChanNode chanNode)方法设置请求前的中间件, 在调用before(ChanNode chanNode)后, 可通过使用一系列的next(ChanNode chanNode)方法设置请求前的中间件. 通过调用Call的after(ChanNode chanNode)方法设置请求后的中间件, 在调用after(ChanNode chanNode)后, 可通过使用一系列的next(ChanNode chanNode)方法设置请求后的中间件.
在中间件中,在网络请求未发起之前, 如果想要修改参数, 可使用
ctx.getCall().getParams()
进行参数修改.
-
获取项目源码,项目讲解,知识点分享,学习交流,那就加入小编的Java学习交流群吧!
-
616 959 444
例子(该例子实现了请求前检查用户id, 如果不存在, 则请求用户id接口, 然后发起请求获取用户信息, 最后检查用户信息)



请点击此处输入图片描

JS做出来的,看看就好!