gpt4 book ai didi

javascript - 使用 blob 创建的图像仅包含数字和逗号

转载 作者:行者123 更新时间:2023-12-03 02:52:17 25 4
gpt4 key购买 nike

我的设备上有一个文件存储在如下文件夹中:

/opt/share/folder/image.jpg

我想使用一些 ajax 请求将此文件上传到我的服务器上,就像使用标准 HTML 表单一样。

经过几次搜索,我开始创建一个 Blob 文件并将其上传到服务器上;这有效。但问题是,我到达时的 jpeg 已损坏,并且包含一组数字和逗号(从技术上讲,是源文件的字节数):

255,216,255,224,0,16,74,70,73,70,0,1,1,0,0,1,0,1,0,0,255,219,0,67,0,8,6,6,7,6,5,8,7,7

Tizen 的文件系统 API 允许我打开此文件并读取其字节 - 这就是我所做的。因此,我使用以下代码来读取字节,创建一个 blob 并将其上传到我的服务器上:

var raw = fs.readBytes(1024);                    
var blob = new Blob([raw], {type:"image/jpeg"});
var formData = new FormData();
formData.append('screenCapture', blob);

$.ajax({
type: 'post',
url: myurl,
processData: false,
contentType: false,
data: formData,
success: function(data){
...

},
error: function(jqxhr, status, msg){
console.log("ERROR! " + msg);
}
});

最佳答案

我终于发现我的代码出了什么问题。

事实上,readBytes 返回一个与字节对应的数字数组,但该数组未格式化为字节数组。

从此数组创建一个新的 Uint8Array 就可以了:

var raw = fs.readBytes(1024);
var byteArray = new Uint8Array(raw);
var blob = new Blob([byteArray], {type:"image/jpeg"});

关于javascript - 使用 blob 创建的图像仅包含数字和逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47793606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com