【问题标题】:Upload a blob with Phonegap FileTransfer - and receive binary使用 Phonegap FileTransfer 上传 blob - 并接收二进制文件
【发布时间】:2013-05-09 14:35:11
【问题描述】:

我想使用 phonegap 将一些二进制数据(例如图像或 zip)上传到服务器,并接收二进制作为响应。可能吗? 虽然上传与FileTransfer 和存储在磁盘上的文件一起工作得很好,但我无法让它与 blob 一起工作

var blob = new Blob([something], {type: 'application/zip'});
var blobUrl = window.URL.createObjectURL(blob);
var ft = new FileTransfer();
ft.upload(blobURL, encodeURI('http://server'), win, fail, options);

blobURL 当然是这样的

blob:1234-...

FileTransfer 没有找到。我尝试先保存 blob,将其路径传递给 FileTransfer - 但 Phonegaps FileWriter 无法处理 blob

使用xhr 不是一个选项,因为您无法在Phonegap (WP8) 中接收二进制文件。 Mimetypeoverride 技巧在这种情况下不起作用,因为 Internet Explorers xhr 没有此选项。

我正在使用 Windows Phone 8。

【问题讨论】:

    标签: cordova binary base64 file-transfer


    【解决方案1】:

    您不能通过 Phonegap 文件传输发送二进制数据。

    您的二进制数据必须转换为 BASE64 字符串,然后传输到服务器。反过来也是一样。

    这里有一个使用Phonegap处理二进制数据传输的教程:http://blog.safaribooksonline.com/2012/03/01/phonegap-tip-binary-filesystem-data/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-18
      • 2023-03-07
      • 1970-01-01
      • 2018-06-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多