iis服务器助手广告广告
返回顶部
首页 > 资讯 > 移动开发 >Android使用okhttp3和retrofit2进行单文件和多文件上传
  • 347
分享到

Android使用okhttp3和retrofit2进行单文件和多文件上传

摘要

目录前言一、单文件上传1、apiService中2、acivity代码二、多文件上传 1、apiservice中2、acivity代码总结 前言 开发项目中需要进行单文件多

前言

开发项目中需要进行单文件多文件的上传功能,下面演示的ApiResponse是自己分装的返回值,要根据自己的项目来完成。使用的mvvm框架Kotlin协程。

看下大体思路和传参形式,仅供参考

一、单文件上传

1、apiService中

     @Multipart
    @POST("xxxx/xxx")
    suspend fun upload(
        @Part part: MultipartBody.Part,
        @Query("code") code: String
    ): ApiResponse<String>

2、acivity代码

  val file = File(it)
  val requestBody: RequestBody = RequestBody.create(MediaType.parse("image/*"), file)
 
  val part = MultipartBody.Part.createFORMData("file", file.getName(), requestBody)
 
  mViewModel.upload(part)

二、多文件上传

 1、apiservice中

    @POST("xxx/xxxxs")
    suspend fun uploads(
        @Body part: MultipartBody,
        @Query("code") code: String
    ): ApiResponse<String>

2、acivity代码

      val builder = MultipartBody.Builder()
            builder.setType(MultipartBody.FORM)
             getDataList()?.filter { !it.filePath.isNullOrEmpty() }.forEach {
                val file = File(it.filePath)
                builder.addFormDataPart(
                    "files",
                    file.getName(),
                    RequestBody.create(MediaType.parse("image/jpg"), file)
                )
            }
 
            mViewModel.uploads(builder.build())

总结

 记录总结,要根据自己的框架进行参考改造。

到此这篇关于Android 使用 okHttp3和retrofit2 进行单文件和多文件上传的文章就介绍到这了,更多相关Android 单文件和多文件上传内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Android使用okhttp3和retrofit2进行单文件和多文件上传

本文链接: https://www.lsjlt.com/news/170248.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android使用okhttp3和retrofit2进行单文件和多文件上传
    目录前言一、单文件上传1、apiService中2、acivity代码二、多文件上传 1、apiservice中2、acivity代码总结 前言 开发项目中需要进行单文件多...
    99+
    2022-11-13
    android 单文件 android多文件上传 android 使用 okhttp3和retrofit2 文件上传
  • Android OKhttp使用(下载和上传文件)
    Android okhttp的使用 首先在build.gradle中引入okhttp implementation 'com.squareup.okhttp3:okhttp:3.14.2' implementation 'co...
    99+
    2023-08-23
    okhttp android
  • 使用hutool进行ftp文件下载和上传
    1 引入依赖 cn.hutool hutool-all 5.8.15 commons-net commons-net 3.6 2 工具类 package ftp;...
    99+
    2023-10-20
    java
  • Linux中怎么使用sFTP进行上传和下载文件
    这篇文章主要讲解了“Linux中怎么使用sFTP进行上传和下载文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中怎么使用sFTP进行上传和下载文件”吧!sftp是一种安全的文件传...
    99+
    2023-06-27
  • 多个上传文件如何使用js验证文件格式和大小
    小编给大家分享一下多个上传文件如何使用js验证文件格式和大小,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!html部分:&nbs...
    99+
    2022-10-19
  • 使用SpringMVC接收文件流上传和表单参数
    目录接收文件流上传和表单参数JAVA服务端代码HTML页面代码SpringMVC接收文件上传,并对文件做处理springmvc配置controller代码如下接收文件流上传和表单参数...
    99+
    2022-11-13
  • element中怎么使用formdata进行上传文件
    本篇内容介绍了“element中怎么使用formdata进行上传文件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言在使用elementU...
    99+
    2023-07-05
  • 使用jquery和ajax怎么上传文件
    本篇文章为大家展示了使用jquery和ajax怎么上传文件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。什么是ajaxajax是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,可以通过在...
    99+
    2023-06-08
  • 使用python上传和下载文件到Fast
    1. 下载fdfs_client-py-1.2.6.tar.gz 2. 解压后进入目录执行"python setup.py install": 3. 新建测试文件test_fdfs.py,把下载解压后安装包的.../FastDFS/co...
    99+
    2023-01-31
    上传 文件 python
  • 你知道如何在Python中使用响应文件框架进行文件上传和下载吗?
    当涉及到文件上传和下载时,Python中的响应文件框架是一个非常强大的工具。Python中的响应文件框架可以帮助我们轻松地上传和下载文件,而且它还可以处理大文件和进度条等功能。在这篇文章中,我们将深入探讨如何在Python中使用响应文件框架...
    99+
    2023-07-20
    响应 文件 框架
  • 如何使用SpringMVC接收文件流上传和表单参数
    这篇文章主要介绍“如何使用SpringMVC接收文件流上传和表单参数”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何使用SpringMVC接收文件流上传和表单参数”文章能帮助大家解决问题。接收文件...
    99+
    2023-06-29
  • Python面试必备:如何使用HTTP库进行文件下载和上传?
    在Python开发中,HTTP库是非常重要的一个工具,它可以让我们轻松地进行文件的下载和上传操作。在本篇文章中,我将会介绍如何使用Python的HTTP库进行文件的下载和上传。 一、Python的HTTP库简介 在Python中,有很多H...
    99+
    2023-09-21
    http 文件 面试
  • ASP中文件上传组件ASPUpload介绍和使用方法
    ASPUpload是一个用于在ASP网页中实现文件上传的组件。它提供了简单易用的接口和丰富的功能,方便开发者在网页中实现文件上传功能...
    99+
    2023-08-22
    ASP
  • 详解Android使用Socket对大文件进行加密传输
    前言数据加密,是一门历史悠久的技术,指通过加密算法和加密密钥将明文转变为密文,而解密则是通过解密算法和解密密钥将密文恢复为明文。它的核心是密码学。数据加密目前仍是计算机系统对信息进行保护的一种最可靠的办法。它利用密码技术对信息进行加密,实现...
    99+
    2023-05-31
    android 文件加密 对大
  • 关于node使用multer进行文件的上传与下载
    首先了解下浏览器的自动下载: 使用Express静态资源中间件的默认行为是在浏览器中展示静态文件,而不是自动下载。 如果需要访问静态资源时自动下载,可以在HTTP响应中设置Conte...
    99+
    2023-05-16
    node multer multer上传下载
  • 使用vue-simple-uploader怎么对文件进行分片上传
    使用vue-simple-uploader怎么对文件进行分片上传?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。vue-simple-uploadervue-simple-u...
    99+
    2023-06-06
  • Linux使用SecureCRT上传和下载文件的步骤
    这篇文章主要介绍“Linux使用SecureCRT上传和下载文件的步骤”,在日常操作中,相信很多人在Linux使用SecureCRT上传和下载文件的步骤问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux...
    99+
    2023-06-13
  • 怎么使用PHP实现文件上传和替换
    今天小编给大家分享一下怎么使用PHP实现文件上传和替换的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。文件上传基础在PHP中,...
    99+
    2023-07-05
  • 使用springboot怎么对文件的上传大小进行配置
    使用springboot怎么对文件的上传大小进行配置?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。springboot上传文件大小的配置我这里记录两种,一种是设...
    99+
    2023-05-31
    springboot bo
  • 如何使用MySQL和Java实现一个简单的文件上传功能
    要使用MySQL和Java实现一个简单的文件上传功能,可以按照以下步骤进行:1. 创建一个MySQL数据库表来存储上传的文件信息。表...
    99+
    2023-10-20
    MySQL
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作