如何在JavaScript中使用YQL来检索Web结果

时间:2011-11-30 05:36:57

标签: javascript html json yql

我一直在尝试给出的代码 How to use YQL to retrieve web results?

但它不起作用。

请向我推荐其他内容或纠正该代码。

我只是在page_load上调用一个函数

<body onload = "load_content();">

在load_content()方法中,我必须获取其他网站的Feed并将其显示在我的HTML页面上。

Load_Content方法

     var query = "select * from html where url='http://www.imdb.com/title/tt0123865/'";

    // Define your callback:
    var callback = function(data) {
    console.log("DATA : " + data);
    };

    // Instantiate with the query:
    var firstFeedItem = new YQLQuery(query, callback);

    // If you're ready then go:
    console.log("FEED : " + firstFeedItem.fetch()); // Go!!

功能YQLQuery

    function YQLQuery(query, callback) 
    {
        this.query = query;
        this.callback = callback || function(){};
        this.fetch = function() {

        if (!this.query || !this.callback) {
            throw new Error('YQLQuery.fetch(): Parameters may be undefined');
        }

        var scriptEl = document.createElement('script'),
            uid = 'yql' + +new Date(),
            encodedQuery = encodeURIComponent(this.query.toLowerCase()),
            instance = this;

        YQLQuery[uid] = function(json) {
            instance.callback(json);
            delete YQLQuery[uid];
            document.body.removeChild(scriptEl);
        };

        scriptEl.src = 'http://query.yahooapis.com/v1/public/yql?q='
                     + encodedQuery + '&format=json&callback=YQLQuery.' + uid; 
        document.body.appendChild(scriptEl);

    };
  }

数据变量没有任何内容

1 个答案:

答案 0 :(得分:0)

简单的获取请求就是答案。

 $.get("http://www.imdb.com/title/tt1243957/",
    function(data){
        console.log(data);
    }//end function(data)
 );//end getJSON