无法包含Javascript ReferenceError:未定义“window”

时间:2011-07-31 15:41:45

标签: javascript yql

我正在尝试在YQL表中使用外部JavaScript库,因为我想使用此库提供的MD5函数。以下是我<execute>块中我尝试包含外部JavaScript的部分:

        <execute><![CDATA[
            // MD5 hashing from crypto-js
            y.include("http://crypto-js.googlecode.com/files/2.3.0-crypto-md5.js");

            var sig2 = Crypto.MD5("test string", {asString: true});
            y.log(sig2);

            ]]></execute>

当我尝试使用此YQL表时,我收到以下错误消息:

  

异常:无法包含Javascript http://crypto-js.googlecode.com/files/2.3.0-crypto-md5.js,ReferenceError:未定义“window”。

显然,JavaScript库正在使用额外的Crypto对象扩展DOM的window对象。

现在我的问题是,我可以在YQL中使用这样的JavaScript库吗?

1 个答案:

答案 0 :(得分:1)

YQL加密对象提供了一个功能。它没有记录,但您可以使用:

<execute><![CDATA[

    var sig2 = y.crypto.encodeMd5Hex('test string');
    y.log(sig2);

]]></execute>

来源:http://www.inerciasensorial.com.br/2012/06/01/programacao/javascript/md5-in-yql-in-hexadecimal-form-using-javascript/