美文网首页
flutter 图片上传到oss,直接cv就可以使用

flutter 图片上传到oss,直接cv就可以使用

作者: 小木虫666 | 来源:发表于2021-11-20 10:55 被阅读0次

拍照之后 图片上传到oss。

用到了一个插件:image_picker,但是在使用这个插件过程中发现部分安卓手机拍照会奔溃(PlatformException (PlatformException(already_active, Image picker is already active, null, null))),就是运行官方的demo也是一样会报错,版本:0.8.4+3,查了很多资料也没解决,也都尝试了。我们的需求只是拍照上传图片,你可以根据你的需求使用image_picker,他可以选择视频,照片等

拍照代码:

  XFile image = await ImagePicker()
        .pickImage(source: ImageSource.camera, imageQuality: 60);

上传oss代码:

  /*
    file 拍照之后的图片文件
    uploadIamgeCallBack 上传回调
*/
  void uploadImage(XFile file, UploadImageCallBack uploadImageCallBack) async {
    if (file == null) return;
    String path = file.path;
    var name = path.substring(path.lastIndexOf("/") + 1, path.length);
    var suffix = name.substring(name.lastIndexOf(".") + 1, name.length);
    FormData formData = FormData.fromMap({
      "image": await MultipartFile.fromFile(path,
          filename: name, contentType: MediaType('image', suffix))
    });

    Dio dio = Dio();
    dio.options.headers = {
      'BucketName': Api.ossBucketName,// 后台给的桶名
      'ObjectDir': Api.ossObjectDir,// 后台给的文件目录名
      'Content-Type': 'multipart/form-data'
    };
    EasyLoading.show(status: '正在上传'); // flutter_easyloading: ^3.0.3
    var respone = await dio.post<String>(Api.ossUrl, data: formData);
    EasyLoading.dismiss();
    if (respone.statusCode == 200) {
      String result = respone.data;
      Map json = jsonDecode(result);

      if (uploadImageCallBack != null) {
        uploadImageCallBack(json);
      }
    }
  }

相关文章

  • flutter 图片上传到oss,直接cv就可以使用

    拍照之后 图片上传到oss。 用到了一个插件:image_picker,但是在使用这个插件过程中发现部分安卓手机拍...

  • Flutter通过api上传图片到阿里OSS

    在做flutter时遇到图片上传到阿里oss上的功能, 首先官网上没有针对dart的sdk, 因此, 我通过htt...

  • Lrz.js 压缩与 new File() 在 iOS上的兼容问

    问题 H5 拍照上传,前端使用 lrz.js 压缩图片后上传到阿里云 OSS,上传需要直接传 File。这里遇到两...

  • 上传图片及预览方法总结

    我们上传文件时可以直接使用 实现上传功能,然而在实际项目开发中可能需要其他的上传方式,比如先将图片上传到OSS中,...

  • vue上传图片到oss(带有图片删除功能)

    最近Vue项目中,要将用户上传的图片全部上传到oss上,OSS配置项请访问:https://help.aliyun...

  • oss 图片处理

    图片处理介绍: 图片处理文章链接 使用: 原始图片上传到OSS后,可以通过简单的RESTful接口,在任何时间、任...

  • 基于SpringBoot的文件上传

    方式: 直接上传到应用服务器 上传到OSS(阿里云、七牛云) 前端将图片转成Base64编码上传

  • 小程序上传图片跳坑

    背景:小程序上传图片,调用后台接口,后台接口获得文件后将该文件上传到oss上,最后返回给小程序前端oss图片路径。...

  • 客户端上传文件失败

    背景 小程序上传图片,调用后台接口,后台接口获得文件后将该文件上传到oss上,最后返回给小程序前端oss图片路径。...

  • 笔记3

    1、基于SpringBoot的文件上传 直接上传到应用服务器 上传到OSS(阿里云、七牛云) 前段将图片转成Bas...

网友评论

      本文标题:flutter 图片上传到oss,直接cv就可以使用

      本文链接:https://www.haomeiwen.com/subject/blvytrtx.html