【问题标题】:Replace uploaded image using Cloudinary and Flutter使用 Cloudinary 和 Flutter 替换上传的图片
【发布时间】:2020-05-27 21:41:24
【问题描述】:

我像这样上传我的图片:

CloudinaryResponse response = await this.url.uploadImage(filePath,
        filename: "background",
        folder: "alquileres/$userId/$portfolioId/$investmentId");

图像名称为“background_longID”。我想覆盖所有图片。

我在 Github 中发现了一个老问题,但没有提供太多信息 (https://github.com/cloudinary/cloudinary_ios/issues/87)

【问题讨论】:

    标签: flutter flutter-dependencies cloudinary


    【解决方案1】:

    您可以在https://cloudinary.com/documentation/image_upload_api_reference#upload_method 的文档页面上找到有关上传和各种上传标志的详细信息。

    如果主要担心您不希望 Cloudinary 将 _longId 参数添加到文件名,您可以在上传期间设置标志 unique_filename=false

    您应该考虑的另一个标志是overwrite。默认情况下,此标志设置为false。因此,当您重新上传时,旧图像不会被替换。您也可以设置标志overwrite=true 以确保正确上传新图像。

    【讨论】:

    • 库方法不允许任何其他参数,如:``` Future uploadImage(String imagePath, {String filename, String folder}) async { return _client.uploadImage(imagePath, imageFilename:文件名,文件夹:文件夹); } ```
    【解决方案2】:

    Cloudinary 不支持与 Flutter 集成。您可以在这里使用一些第三方,例如:https://gist.github.com/Wizpna/eab058e15cc1533bdb73bf764078f642

    如果您想将图片上传到 Cloudinary,我们的最佳做法是添加上传小部件。你可以在这里读更多关于它的内容: https://cloudinary.com/documentation/upload_widget

    【讨论】:

    • 我已经在使用cloudinary_client。与那个 .dart 文件有什么区别?
    • 那个上传小部件不是我现在拥有的吗?还是你的意思是别的?
    • 上传小部件是一种 UI 工具,您可以通过几行代码将其添加到您的应用中。它可以让您将图像上传到 Cloudinary。
    • 对不起,我不确定我是否明白你的意思。我已经有一个小部件可以将图片上传到我的 Cloudinary 帐户
    【解决方案3】:

    对于可能遇到相同问题的人,这就是我所做的

         CloudinaryClient client = new CloudinaryClient(<API_KEY>, <API SECRET>, <CLOUD NAME>);
         await client.uploadImage( file.path, filename: <NAME_FOR_PHOTO>, folder: <FOLDER_NAME(OPTIONAL)>)
          .then((result){
              print("CLOUDINARY:: ${result.secure_url}==> result");
          })
          .catchError((error) => print("ERROR_CLOUDINARY::  $error"));
    

    【讨论】:

    • 这很糟糕。你不应该把你的 API_KEY 和 API_SECRET 放在 Flutter 上,因为你的应用很容易被反编译和提取密钥。
    【解决方案4】:

    您可以使用此包https://pub.dev/packages/cloudinary_public,它不需要您的 API_KEY 或 API_SECRET

    【讨论】:

      猜你喜欢
      • 2021-10-27
      • 2016-09-20
      • 2013-03-03
      • 2019-03-17
      • 2021-09-29
      • 2014-08-13
      • 2019-05-07
      • 2016-09-10
      • 2016-09-09
      相关资源
      最近更新 更多