什么是每个.php文件头部分中的Promises脚本?

时间:2016-08-10 07:55:09

标签: javascript

所以我有这个非常奇怪的问题,我没有在网上找到任何解决方案。 无论我创建什么页面,.html或.php我都会在head部分获得此Promises javascript。有没有人见过这个或者这是什么?

// Promises 
    var _eid_promises = {}; 
    // Turn the incoming message from extension 
    // into pending Promise resolving 
    window.addEventListener("message", function(event) { 
        if(event.source !== window) return; 
        if(event.data.src && (event.data.src === "background.js")) { 
            console.log("Page received: "); 
            console.log(event.data); 
            // Get the promise 
            if(event.data.nonce) { 
                var p = _eid_promises[event.data.nonce]; 
                // resolve 
                if(event.data.result === "ok") { 
                    if(event.data.signature !== undefined) { 
                        p.resolve({hex: event.data.signature}); 
                    } else if(event.data.version !== undefined) { 
                        p.resolve(event.data.extension + "/" + event.data.version); 
                    } else if(event.data.cert !== undefined) { 
                        p.resolve({hex: event.data.cert}); 
                    } else { 
                        console.log("No idea how to handle message"); 
                        console.log(event.data); 
                    } 
                } else { 
                    // reject 
                    p.reject(new Error(event.data.result)); 
                } 
                delete _eid_promises[event.data.nonce]; 
            } else { 
                console.log("No nonce in event msg"); 
            } 
        } 
    }, false); 


    function TokenSigning() { 
        function nonce() { 
            var val = ""; 
            var hex = "abcdefghijklmnopqrstuvwxyz0123456789"; 
            for(var i = 0; i < 16; i++) val += hex.charAt(Math.floor(Math.random() * hex.length)); 
            return val; 
        } 

        function messagePromise(msg) { 
            return new Promise(function(resolve, reject) { 
                // amend with necessary metadata 
                msg["nonce"] = nonce(); 
                msg["src"] = "page.js"; 
                // send message 
                window.postMessage(msg, "*"); 
                // and store promise callbacks 
                _eid_promises[msg.nonce] = { 
                    resolve: resolve, 
                    reject: reject 
                }; 
            }); 
        } 
        this.getCertificate = function(options) { 
            var msg = {type: "CERT", lang: options.lang}; 
            console.log("getCertificate()"); 
            return messagePromise(msg); 
        }; 
        this.sign = function(cert, hash, options) { 
            var msg = {type: "SIGN", cert: cert.hex, hash: hash.hex, hashtype: hash.type, lang: options.lang}; 
            console.log("sign()"); 
            return messagePromise(msg); 
        }; 
        this.getVersion = function() { 
            console.log("getVersion()"); 
            return messagePromise({ 
                type: "VERSION" 
            }); 
        }; 
    }

1 个答案:

答案 0 :(得分:0)

这是Selenium扩展名。 Selenium记录和播放工具,可轻松熟悉Selenium WebDriver。 扩展名:mooikfkahbdckldjjndioackbalpho ...