retrofit

安卓打开相机相册功能实现,并通过SpringBoot对接Retrofit2上传图片(@RequestBody转变为MultiPartFile全流程,低门槛实现系列)

空扰寡人 提交于 2020-04-26 15:55:09
需求分析: 通过安卓打开相机相册,使用SSM框架搭建后台接口,前端使用retrofit2进行文件传输 注:低门槛实现系列就是不涉及过深的知识点,不做过多的异常捕获,不过滤版本不判空,面向小白。 正文 首先需要搭建SSM框架,默认你已经学会了,相应的接口可以看看下面这一篇文章 https://blog.csdn.net/qq_44403367/article/details/105690838 @Controller @ResponseBody @RequestMapping ( "Oss" ) public class OssController { @Autowired private OssService ossService ; @ApiOperation ( value = "文件上传" , notes = "文件上传" ) @ResponseBody @RequestMapping ( value = "/uploadImage" , method = RequestMethod . POST , consumes = "multipart/*" , headers = "Content-Type=multipart/form-data" ) public BaseModel upload ( @ApiParam ( "商品id" ) @RequestParam (

Java生鲜电商平台-SpringCloud微服务架构中网络请求性能优化与源码解析

喜夏-厌秋 提交于 2020-04-24 16:14:40
Java生鲜电商平台-SpringCloud微服务架构中网络请求性能优化与源码解析 说明:Java生鲜电商平台中,由于服务进行了拆分,很多的业务服务导致了请求的网络延迟与性能消耗,对应的这些问题,我们应该如何进行网络请求的优化与处理呢? 到底有没有一些好的建议与方案呢? 下面这个文章将揭晓上面的问题,让你对 SpringCloud 微服务网络请求性能有一个全新的认识. 目录简介 01.网络请求异常分类 02.开发中注意问题 03.原始的处理方式 04.如何减少代码耦合性 05.异常统一处理步骤 06.完成版代码展示 01.网络请求异常分类 网络请求异常大概有哪些? 第一种:访问接口异常,比如404,500等异常,出现这类异常,Retrofit会自动抛出异常。 第二种:解析数据异常,数据体发生变化可能会导致这个问题。 第三种:其他类型异常,比如服务器响应超时异常,链接失败异常,网络未连接异常等等。 第四种:网络请求成功,但是服务器定义了异常状态,比如token失效,参数传递错误,或者统一给提示(这个地方比较拗口,比如购物app,你购买n件商品请求接口成功,code为200,但是服务器发现没有这么多商品,这个时候就会给你一个提示,然后客户端拿到这个进行吐司) 02.开发中注意问题 在获取数据的流程中,访问接口和解析数据时都有可能会出错,我们可以通过拦截器在这两层拦截错误。 1

andorid jar/库源码解析

て烟熏妆下的殇ゞ 提交于 2020-04-24 12:48:26
前言   本篇作为开篇,会大体上说明,需要解读源码的,类库,或者jar。 序   原本,类库和jar的系列准备写到逆向系列课程的,但是那个东西,在写了两篇,就没有后续了,现在也不知道从哪里开始了, 只能等后期想好了,再开篇单独写吧。 目录:   EventBus、Dagger、okhttp、retrofit、butterknife、zxing、Bolts、RxJava   org.apache.commons.codec、org.apache.commons.lang、org.apache.commons.io   io.netty、io.fabric、cat.ereza、javax、msgpack、zip4j   com.davemorrissey.labs、com.daimajia.easing、com.arcsoft.livebroadcast、pl.droidsonroids.gif 厂牌库:   XXX 工具库:    来源: oschina 链接: https://my.oschina.net/u/4265622/blog/3685595

Android having problems while uploading Images using Retrofit multipart?

久未见 提交于 2020-04-21 06:36:27
问题 I'm getting the following error while trying to upload an Image to a server using retrofit, the api receives a header authorization token, _method = "put" and image = "imageName.jpg" as parameters, everything else is optional, any help would be appreciated. java.io.FileNotFoundException: /storage/emulated/0/Download/space-wallpaper-21.jpg: open failed: EACCES (Permission denied) userImage.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { galleryIntent =

Android having problems while uploading Images using Retrofit multipart?

拈花ヽ惹草 提交于 2020-04-21 06:34:19
问题 I'm getting the following error while trying to upload an Image to a server using retrofit, the api receives a header authorization token, _method = "put" and image = "imageName.jpg" as parameters, everything else is optional, any help would be appreciated. java.io.FileNotFoundException: /storage/emulated/0/Download/space-wallpaper-21.jpg: open failed: EACCES (Permission denied) userImage.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { galleryIntent =

一款使用RxJava+Retrofit+MVP的快播App开源啦!

送分小仙女□ 提交于 2020-04-18 12:24:13
《快播》,仿网易云音乐UI,整体采用RxJava+Retrofit+MVP的架构,支持在线视频播放,在线图片浏览等功能。 用到第三方开源库: ButterKnife:依赖注入框架 glide:图片加载 retrofit:网络请求 jieCaoVideoPlayer:播放器 抓取接口用于数据展示 效果图如下: 基类: package com.zmj.qvod.base; import android.content.Context; import android.content.Intent; import android.content.pm.ActivityInfo; import android.os.Build; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.Window; import android.view.WindowManager; import android.widget.Toast; public abstract class

为何这篇RxHttp Http请求框架会如此销魂,全文干货建议收藏!

微笑、不失礼 提交于 2020-04-16 13:19:05
【推荐阅读】微服务还能火多久?>>> 前言 RxHttp相较于retrofit,功能上,两者均能实现,并无多大差异,更多的差异体现功能的使用上,也就是易用性,如对文件上传/下载/进度监听的操作上,RxHttp用及简的API,可以说碾压retrofit;另外在baseUrl、公共参数/请求头、请求加解密等功能上的易用性都要优于retrofit;然而这些,个人觉得都不算什么,个人觉得RxHttp最大的优势在于它近乎为0的上手成本、极简的API以及高扩展性,看完这篇文章,相信你会有同感。 那RxHttp就没有缺点吗?有,那就是它的稳定性目前还不如retrofit,毕竟RxHttp刚出道8个月,且全部是我一个人在维护,当然,并不是说RxHttp不稳定,RxHttp未开源前,在实际项目已经使用了近2年,接着在19年4月份将其开源,目前大大小小已迭代30多个版本,用的人也不在少数,可以说很稳定了。 2、简介 RxHttp是基于OkHttp的二次封装,并与RxJava做到无缝衔接,一条链就能发送任意请求。主要优势如下: 1. 30秒即可上手,学习成本极低 2. 完美支持 Kotlin 协程 3. 史上最优雅的处理多个BaseUrl及动态BaseUrl 4. 史上最优雅的对错误统一处理,且不打破Lambda表达式 5. 史上最优雅的实现文件上传/下载及进度的监听,且支持断点下载 6. 支持Gson

Android大文件上传秒传之实战篇

你说的曾经没有我的故事 提交于 2020-04-15 13:58:03
【推荐阅读】微服务还能火多久?>>> picture.png 源码传送门 在上一篇文章我们介绍了获取大文件的一个唯一的特征值MD5,通过MD5我们可以唯一的标识一个文件,并可以实现秒传效果,今天的这篇文章主要介绍大文件的上传操作,当然谈到上传文件,网络是必不可少的,现在也有很多较为流行的网络框架,如 volley , OkHttp , Retrofit 。而今天的这篇文章是采用最原始的上传文件的方法,通过HttpClient上传文件的方式。 HttpClient API 在API 23(6.0系统)之前,HttpClient类是Android API中本身自带的方法,但是在23及以后的版本中谷歌放弃了HttpClient,如果想要使用需要在gradle文件中加上下面代码 android { useLibrary 'org.apache.http.legacy' } 加入上面的代码后,我们build一下就可以API23及以后版本中可以继续使用HttpClient,在使用HttpClient上传文件时可以使用MultipartEntity,FileBody,要使用这个类对象的话,我们需要导入相关jar包,在此我使用的是httpmine-4.1.3.jar。可能有些人说了,为何废弃了,还要用,不要问为什么,因为我也不知道,哈哈,其实是懒,主要是公司老项目用的是这个,还没准备大动

Android之提示Method return type must not include a type variable or wildcard:

£可爱£侵袭症+ 提交于 2020-04-15 10:32:06
【推荐阅读】微服务还能火多久?>>> 1 问题 调用retrofit的时候提示错误如下 Method return type must not include a type variable or wildcard: io.reactivex.Observable<package.class<?>> 2 原因 我们知道英文单词variable是多变的,易变的意思,然后 wildcard是未知数的意思,上面的错误也就是说,这个函数返回的类型不能是易变的或者未知数,特么的,这个函数是从java代码转kotlin的 比如java代码有下面的类,我们需要返回这个类 public class Test<T> { public int code; public T data; } public Observable<Test> ff() {} 转kotlin之后,变成下面了 fun ff(): Observable<Test<*>> { } 就是这个<*>搞出问题来的 3 解决办法 把*去掉改成Any fun ff(): Observable<Test<Any>> { } 点赞 收藏 分享 文章举报 chen.yu 发布了1090 篇原创文章 · 获赞 708 · 访问量 315万+ 他的留言板 关注 来源: oschina 链接: https://my.oschina.net/u