zoukankan      html  css  js  c++  java
  • nodejs远程获取图片

    if(require("http")) {
                var http = require("http");
                http.get(url,function (res) {
                    res.setEncoding('binary');//二进制(binary)
                    var re ='';
                    res.on('data',function (data) {
                        re += data;
                        // collect the data chunks to the variable named "html"

                    }).on('end', function () {
                            //console.log(re);
                            var key = getKeyByURL(url);
                            var b = new Buffer(re);
                            var imageData =toArrayBuffer(b)
                             getCanvasData(key, imageData, order);
                        })
                }).on('error', function (e) {
                        console.log("Got error: " + e.message);
                    });
            }

        };

    function getCanvasData (key, buffer, order) {
            createCanvas();
            var _blob = new Blob(new Array(buffer), { type: "image/jpeg" });
            var _url = URL.createObjectURL(_blob);
            var _img = new Image();
            var imgData = undefined;
            _img.onload = function () {
                ctx.clearRect(0, 0, 256, 256);
                ctx.drawImage(this, 0, 0);
                URL.revokeObjectURL(_url);
                imgData = ctx.getImageData(0, 0, 256, 256);
                cache[order](key, imgData);
                exeCheckCallback(key, imgData);
            };
            _img.onerror = function () {
                exeCheckCallback(key, imgData);
            };
            _img.src = _url;
        };
    function createCanvas() {
            if (!canvas) {
                canvas = document.createElement('canvas');
                canvas.width = 256;
                canvas.height = 256;
                ctx = canvas.getContext('2d');
            }
        }
  • 相关阅读:
    Centos6.5下本地yum源及局域网yum源配置
    计算机网络之应用层_part -3
    计算机网络之应用层_part -2
    计算机网络之应用层_part -1
    LeetCode-Minimum Path Sum[dp]
    LeetCode-Interleaving String[dp]
    LeetCode-Best Time to Buy and Sell Stock III[dp]
    LeetCode-Palindrome Partitioning II[dp]
    用hexo + github 快速搭建个人博客,由于刚搭建好,有点小激动,就分享下,不好的地方还请指出,谢谢
    搭建node.js 本地服务器
  • 原文地址:https://www.cnblogs.com/HughTan/p/3689993.html
Copyright © 2011-2022 走看看