使用okgo传递body(application/json)

网络请求常见的有这么几种:
1.get无参/有参
2.post,然后表单模式,不停的put、put、put
3.post 上传文件

这些基本都是常见的,但是有个接口,如下图所示:
在这里插入图片描述
这是服务端给我的swagger,用上面这些假数据测试了一下之后,发现实际上userId和storeId是拼接在url里的,唯一一个麻烦的是body这个参数
在这里插入图片描述
以前服务端也给我弄过这种接口,用的是okhttp3生成requestBody来解决的,现在这个项目统一用的是okgo,如果单独用其依赖的okhttp3来写一个没有封装的方法也是可以的,但是基类里也好了okgo的几种调用方法,如果单独写的话,有点麻烦,也想弄成okgo这样的。

没怎么找文档,网上随便搜了一下,发现没有什么说这个的,但是我随便试了一下:
在这里插入图片描述
跟body相关的有这么两个方法,点进去看了下源码,脑阔疼。。。。抱着死马当活马医的心态,先试试呗。。。

upRequestBody这个方法里,要我们传递一个RequestBody参数,而以前调用这种类型接口的代码里,同样也是生成一个RequestBody:

public static final MediaType JSON = MediaType.parse("application/json; charset=utf-8");
RequestBody body = RequestBody.create(JSON, data);

那么既然都需要一个RequestBody,那就生成之后再传进去试试吧:
按照okgo的样式:
在这里插入图片描述
然后我调用了一下接口,可以了。。。emmmmm。。。。。

记录下来,方便以后再碰到。。。。


版权声明:本文为qq_33339175原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。