使用blob作为src图像

时间:2016-05-15 10:26:13

标签: javascript jquery mysql ajax blob

我在MySQL BDD中将图像存储为blob 我调用我的节点API,用JQuery Ajax返回我的BDD行:

$.ajax({
    url: "http://mydinners.fr:5280/partner",
    type: "GET",
    datatype: "json",
    contentType: "application/json; charset=utf-8",
    success: function(text){
        for(var i=0; i<text["message"].length; i++){
            var objurl = window.URL.createObjectURL(new Blob(text["message"][i]["partner_image"]));

            // text["message"][i]["image"] is an array of point like : [192,257,54,269,85,458,...]

            var module = "";
            module += "<img class='activator' src='"+objurl+"'>";

            $(".container .row").append(module);
        }
    }
});

objurl值是这样的:&#34; blob:http%3A // dev.mydinners.fr / e73c5c6f-562e-4b66-9d4e-7a4c8567532e&#34;

但是图片是这样的:http://i.stack.imgur.com/Vhma7.png

你知道如何将我的blob图像从mysql翻译成img吗? THX。

1 个答案:

答案 0 :(得分:3)

在创建blob之前,您必须将数组转换为二进制数据(使用Uint8Array)

import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class Main { public static void main(String[] args) { System.out.println("Hello World!"); Path path = Paths.get("C:\\log.txt"); System.out.println(Files.exists(path)); } }

这有点无关紧要,但是当你使用Uint8Array时它是一个工作的例子,我只是选择我自己的获取/打印数据的方式

var binary = new Uint8Array(json.message[0].partner_image)