【问题标题】:Cordova + ngcordova - Upload multiple images in a single requestCordova + ngcordova - 在一个请求中上传多个图像
【发布时间】:2015-12-16 04:02:59
【问题描述】:

我正在处理一个 IOS Ipad cordova 应用程序,它是一个调查类型的应用程序。

用户提交调查后,我要上传多张图片。

我正在使用 ngcordova 相机插件来捕获图像,我将图像存储为 $scope 上的 base64 DATA_URLS 以供查看

我正在向服务器发送一个 HTML 字符串,以便它为我创建一个 HTML 的 PDF,包括图像,然后将它作为 base64 字符串发送回给我。

这适用于少量图片,但提交调查时可能会上传 50-60 张图片,图片的 base64 DATA_URL 会输出 HTML MASSIVE(如您所料)。

这导致我考虑将捕获的图像存储为 FILE_URI,在研究后似乎将多个图像作为文件上传并不简单。我找不到任何解决问题的文章。

我见过一种使用承诺的方法,对我来说这似乎不是一个好主意(由于会触发的 HTTP 请求的数量),但我似乎找不到替代方案。

那么我将如何将图像文件上传到我的 API?

【问题讨论】:

  • 你看过Cordova Plugin Repository吗?
  • 同时发送多个图像的唯一方法是使用 base64 字符串。使用FILE_URI和文件传输会一一发送

标签: javascript ios angularjs cordova


【解决方案1】:

此后,我使用 HTML5 Canvas 元素解决了这个问题。

我只是遍历从 cordova 捕获的图像文件,使用 canvas API 将它们转换为 blob,然后将 blob 集合发布到我的 API。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-16
    • 1970-01-01
    • 2018-06-01
    • 2011-10-25
    • 1970-01-01
    • 1970-01-01
    • 2015-03-17
    • 2021-07-31
    相关资源
    最近更新 更多