当前位置: 首页 > news >正文

美食网站建设总结一键生成原创动漫

美食网站建设总结,一键生成原创动漫,泉州网站建设价钱,中国移动社区app下载一、背景 一般上传文件都是以表单形式上传文件,最近项目中涉及到非表单形式上传文件流,分为单个文件流上传、大文件分段上传,此种情景资料较少,这里记录下。 二、方案介绍 2.1 需求协议 1. 上传文件 API 端点:/serv…

一、背景

一般上传文件都是以表单形式上传文件,最近项目中涉及到非表单形式上传文件流,分为单个文件流上传、大文件分段上传,此种情景资料较少,这里记录下。

二、方案介绍

2.1 需求协议
1. 上传文件
API 端点:/service/upload
● 方法:PUT
● 请求参数:○ filename:文件名(必选)
○ 请求头:○ Authorization:用于身份验证的 token(必选)○ X-Request-ID:请求的唯一标识符(必选)○ Upload-Offset:当前上传块的偏移量(必选)■ 单位:byte○ Upload-Type:文件上传方式(必选)■ 1 上传到相册(/storage/emulated/0/Pictures/)■ 2 上传到sdcard(/sdcard/)
○ 请求体○ 文件二进制数据
2.2 定义接口
格式:http://example.com/api/upload?filename=example.txt所以应该这样定义接口:@PUT("/service/upload")
RequestBody): Call<ResponseBody>fun uploadFile(@Query("filename") filename:String,  @Body body: RequestBody):Call<ResponseBody>
2.3 定义一个RequestInterceptor 迭代器,将请求参数放到请求头中
class RequestInterceptor(val authorization:String,val requestId:String,val offset:String,val uploadType:String) : Interceptor {override fun intercept(chain: Interceptor.Chain): Response {val request = chain.request()val requestBuilder = request.newBuilder()requestBuilder.addHeader("Authorization", authorization)requestBuilder.addHeader("X-Request-ID", requestId)if(offset.isNotEmpty()){requestBuilder.addHeader("Upload-Offset", offset)}if(uploadType.isNotEmpty()){requestBuilder.addHeader("Upload-Type", uploadType)}//        requestBuilder.removeHeader("Content-Length")
//        requestBuilder.removeHeader("Content-Transfer-Encoding")
//        requestBuilder.removeHeader("Content-Disposition")return chain.proceed(requestBuilder.build())}
}

2.4调用接口
      // 创建文件名请求体val requestBody = RequestBody.create(null, file)//第一个参数传nullval call = RetrofitClient.getUploadFileService(token, requestId, "0", uploadType).uploadFile(file.name, requestBody)

 

用到的相关库:

   implementation 'com.squareup.retrofit2:retrofit:2.9.0'implementation 'com.squareup.retrofit2:converter-gson:2.9.0'implementation 'com.squareup.okhttp3:logging-interceptor:3.14.9'

http://www.yayakq.cn/news/528533/

相关文章:

  • app和网站趋势遵义市和城乡建设局网站
  • 站长平台网站cms 网站群
  • 做网站推广邢台网站站内关键词优化
  • 广州市外贸网站建设腾讯网qq网站
  • 山东建设监理协会网站无法登录宁波正规站内优化seo
  • 怎么做视频网站教程最新域名解析网站
  • 做网站su杭州清风室内设计学院
  • 老网站绑定新网站如何做怎样做网站和网站的友情链接
  • 医院网站建设的好处seo查询什么意思
  • 吴江区建设局网站打不开wordpress悬浮广告
  • 织梦网站安装视频教程wordpress内页显示副标题
  • 天津网站建设制作品牌公司网新科技集团有限公司
  • 网站做长连接做网站什么框架方便
  • 网站结构及内容建设策略wordpress淘宝主题破解
  • 做网站的域名怎么申请wordpress手机滑动导航菜单
  • 备案 网站名称怎么写网页与网站设计说明
  • 简洁的个人网站网站建设运营
  • 网站建设优势软件平台搭建流程
  • 企业网站模板科技感免费注册帐号
  • 郑州优化网站收费标准校园安全网站建设
  • 盐城网站建设hx1818宜昌模板网站建设
  • 网站开发洲际酒店 手机网站模板
  • 做网站的流程知乎公司注册后每年的费用
  • asp网站开发上传组建好看的网站 你明白吗
  • 阿里云建设网站教程西部数码网站管理助手4.0
  • 住房与城乡建设部网站特色小镇网页商城设计
  • 民治做网站公司建企业网站程序系统
  • 东莞网站快速优化排名网站建设百科
  • 电商平台网站 建设目标帮做暑假作业网站
  • 公司找人做网站vs2008怎么做网站