Retrofit学习使用中犯的错

本来项目用的网络请求框架是Volley,但是又觉得Retrofit那么厉害,之前是比较懵懂的用,好多还是不理解,于是就看了一天的blog,有了了解,算是启蒙;但是网上的blog大多是自己搭的一个后台写接口,然后自己访问,像我这种不会写接口怎么办(时间长了,都快忘没了),就用之前项目已有的接口,所以学的就和网上的blog流程有差异。先用了几个@GET注释,有点差错,但是是粗心导致的,还算顺利。然后结合RxJava使用@GET,也算是顺利,想着既然@GET没问题了那就来@POST吧,找了一个以前的接口,在postman上测试了一下,可以使用,就转到测试@POST中来,结果死掉了,怎么搞都是415,在postman上就是一个接口地址,然后几个key-value,全都是字符串;参数类型怎么会不对呢

想着是不是忘了Headers,发现不需要Headers,用Fiddler抓包,发现也是那几个参数,向别人请教,非要让我自己悟,气晕了。

后来突然想起来了,这个接口参数中是要传图片的,但是可以不传,那就是传文件形式了,开始用的是@FormUrlEncoded和@FiledMap结合的形式,是表单的上传,赶紧改成文件形式的上传@Multipart和@PartMap配合使用,然后成功了。

心酸!本来打算循序渐进的,先不看文件上传,放到后面再看,结果自己蹦出来了

区别,表单上传都是用&间隔的,成字符串,如下


用文件上传就会有标签隔开


如下:


以后不会犯了!!!



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值