zoukankan      html  css  js  c++  java
  • ajax二进制流乱码图片解决方法

    仅供自己参考

    参考博客

    在请求成功的地方 添加以下代码:

    var blob=new Blob();

    blob=this.response;

    既然二进制数据拿到了,那么要把它放在一个 html标签中,并且应该是img标签 那么:代码应该是

    var img = document.createElement("img");

    img.src = window.URL.createObjectURL(blob); //有问题,将blob加载到img中 由于blob太大 会有性能影响 应该怎么在加载之后 如何释放呢:

    img.onload = function(e) {

    window.URL.revokeObjectURL(img.src);//释放。
    };

    然后 将img 放到一个div容器中就可以啦。

    $("#imgcontainer").html(img); 是的请求处理就应该是这样。

    var xhr = new XMLHttpRequest();    
        xhr.open("get", url, true);
        xhr.responseType = "blob";
        xhr.onload = function() {
            if (this.status == 200) {
                var blob = this.response;
                var img = document.createElement("img");
                img.onload = function(e) {
                  window.URL.revokeObjectURL(img.src); 
                };
                img.src = window.URL.createObjectURL(blob);
           $("#imgcontainer").html(img);
     } } xhr.send();
    
  • 相关阅读:
    linux软件安装
    shell脚本
    ssh密钥登录及远程执行命令
    shell编程
    vi编辑器
    linux入门
    《玩转Bootstrap(JS插件篇)》笔记
    SharePoint BI
    Apache-ActiveMQ transport XmlMessage
    C#操作AD及Exchange Server总结(二)
  • 原文地址:https://www.cnblogs.com/shiazhen/p/11883686.html
Copyright © 2011-2022 走看看