Retrofit 2 + OkHttp 3 实现图片上传 (Rx
2016-03-24 本文已影响11041人
Akashi
1. 首先是api,贴一个比较有用的参考:
https://futurestud.io/blog/retrofit-2-how-to-upload-files-to-server
![](https://img.haomeiwen.com/i719611/371157e893be54d3.png)
接触过Rx的童鞋们一看就知道了,这里用Observable<T>替代了Call<T>。
2. 下面是我的Presenter,核心代码在这里(包括注释^_^):
![](https://img.haomeiwen.com/i719611/151c47513d8cb5a3.png)
3. 客户端调用:
![](https://img.haomeiwen.com/i719611/9d8eb05bc090cbe7.png)
箭头地方卡住很久,最后发现Stack上:
http://stackoverflow.com/questions/28300359/cant-get-okhttps-response-body-tostring-to-return-a-string
onNext里responseBody.string()可以把返回值的body取出,这里我是拿到了自己服务器保存的图片完整路径。