Javascript 雅虎查询语言-RSS

Javascript 雅虎查询语言-RSS,javascript,rss,yql,Javascript,Rss,Yql,目前我有这个函数试图加载外部站点RSS提要。不幸的是,它没有正确加载提要,因此我无法执行这些操作。这个提要是使用GoogleFeedsAPI正确加载的,但由于这一点很快就会被取消,我尝试在Javascript跨域中使用另一种RSS加载方法。我是否对YQL url做了错误的操作 var site = 'www.mysite.com/news.aspx?rss=1'; var yql = 'http://query.yahooapis.com/v1/public/yql?q=' + encodeUR

目前我有这个函数试图加载外部站点RSS提要。不幸的是,它没有正确加载提要,因此我无法执行这些操作。这个提要是使用GoogleFeedsAPI正确加载的,但由于这一点很快就会被取消,我尝试在Javascript跨域中使用另一种RSS加载方法。我是否对YQL url做了错误的操作

var site = 'www.mysite.com/news.aspx?rss=1';
var yql = 'http://query.yahooapis.com/v1/public/yql?q=' + encodeURIComponent('select * from xml where url="' + site + '"') + '&format=xml';
$.get(yql).done(function (rss)
{
         //do the Things
}

使用以下URL映射作为测试:

        error="Redirected to a robots.txt restricted URL: http(s)://www.mySite.com/news.aspx?rss=1"
这将生成有效的YQL查询:

'http://query.yahooapis.com/v1/public/yql?q=' + encodeURIComponent('select * from xml where url="http://www.bls.gov/feed/empsit.rss"')
使用以下JSON替代输出:

https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%3D%22http%3A%2F%2Fwww.bls.gov%2Ffeed%2Fempsit.rss%22
并记住以下限制以进行故障排除:

YQL使用服务器上的robots.txt文件确定可从站点访问的网页。YQL在访问robots.txt文件时使用用户代理Yahoo Pipes 2.0,并检查该用户代理是否允许。如果robots.txt检查确实阻止YQL访问您的内容,那么它将使用不同的用户代理获取目标页面:

因此,要允许YQL访问您的内容,只需将Yahoo Pipes 2.0添加到robots.txt的相关部分。例如:

https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%3D%22http%3A%2F%2Fwww.bls.gov%2Ffeed%2Fempsit.rss%22&format=json
参考资料

User-agent: Yahoo Pipes 2.0
Allow: /