栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

flutter 需要同时上传到后端服务器的 文件和 json

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

flutter 需要同时上传到后端服务器的 文件和 json

flutter 需要同时上传到后端服务器的 文件和 json

服务器 使用 springboot 借助

@RequestPart(value = "file", required = false) MultipartFile file, @RequestPart("material") TbVideo tbVideo

注解里的参数 必须和前段的参数一致;

@PostMapping("/uploadVideos")
    public Result insertVideos(@RequestPart(value = "file", required = false) MultipartFile file, @RequestPart("material") TbVideo tbVideo) {

    //业务逻辑---

}

flutter 端

  添加 权限   如果6.0 以上  需要动态权限  如果http  添加 

android:usesCleartextTraffic="true"
  
    
    
    

添加  文件操作插件和dio

  dio: ^4.0.6
  path_provider: ^2.0.9
  Directory tempDir = await getTemporaryDirectory();
    String tempPath = tempDir.path+"/b.jpg";
    MultipartFile multipartFile = await MultipartFile.fromFile(tempPath,filename: "b.jpg" ,
contentType: MediaType.parse("image/jpeg")
);
    
    //json 数据上传
    Map map = Map();
     map["title"]="hello world";
    map["userid"]=12344555;
     map["content"]="sdsds";
    map["videopath"]="sdsds";
    map["title"]="hello world";
    map["avatar"]="sdsds";
    map["categoryid"]=33333;

    var encode = json.encode(map);
    MultipartFile multipartFiles = await MultipartFile.fromString(encode,contentType:MediaType.parse("application/json; charset=UTF-8") );
      // "material":map,
      FormData formData = FormData.fromMap({
        "material":multipartFiles, // material 服务器对应的名称
        "file": multipartFile,   //file  服务器对应的名称

      });




    new Dio().post("http://192.168.1.4:80/uploadVideos",data:formData ).then((value){
           print("--------${value.data.toString()}");
         });


  }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/851456.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号