javascript - jQuery AJAX 响应以字符串 blob 形式出现

标签 javascript jquery ajax blob

我调用 AWS S3 以在 jQuery 3.3.0 中使用 AJAX 调用检索图像,而不是获取 blob 对象,我收到的响应为 [object Blob]"。如果我必须提供更多详细信息,请告诉我。

请在下面找到代码:

$.ajax({
    url: "my_path/download_image.php",
    data: {
        name: "my_name"
    },
    cache: false,
    xhrFields: {
        responseType: 'blob'
    },
    success: function (data) {
        console.log(data);
        var image = new Image();
        var url = window.URL || window.webkitURL;
        self.DownloadStudentImages(students, index + 1);
        image.src = url.createObjectURL(data);
        self.SavePic(imageFilename);
    },
    error: function () {}
});

最佳答案

我已经解决了这个问题。通常,来自 PHP 的 AWS 响应是字符串格式,除非它被显式编码。因此,我从 PHP 和 javascript 端发送 base64,我将其转换为字节数组,从而转换为解决问题的 blob。

关于javascript - jQuery AJAX 响应以字符串 blob 形式出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54115265/

相关文章:

javascript - 如果内容可编辑 div 位于光标位置下方,如何删除它?

javascript - 我无法使用代码示例生成单个 C3.js 图表,这可能是什么问题?

javascript - jQuery 和 JavaScript 数学对象

javascript - Firebase 注销不起作用

jquery - Angular 1.3 和所需的最低 JQuery 版本

单击时的 jquery 列值

javascript - 使用相对级别位置定位通用名称的 div 属性

javascript - Rails,使用 AJAX 创建对象

javascript - 访问受限 URI 被拒绝代码 : 1012

javascript - 使用 .promise() 让 Ajax 请求首先启动?