我有一个在Yahoo Pipes中创建的RSS feed。您可以view it here。
但是,当通过Google Feed的API查看时,pubDate的状态未定义(为避免产生疑问,我也尝试使用PubDate进行格式化)。
这是我使用的代码:
<div class="clear" id="feed">
</div>
<script type="text/javascript">
var feedcontainer=document.getElementById("feed")
var feedurl="http://pipes.yahoo.com/pipes/pipe.run?_id=f0eb054e3a4f8acff6d4fc28eda5ae32&_render=rss"
var feedlimit=5
var rssoutput="<h3>Business and Tax News</h3><ul>"
function rssfeedsetup(){
var feedpointer=new google.feeds.Feed(feedurl)
feedpointer.setNumEntries(feedlimit)
feedpointer.load(displayfeed)
}
function displayfeed(result){
if (!result.error){
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++)
rssoutput+="<li><a href='" + thefeeds[i].link + "'>" + thefeeds[i].title + " (" + thefeeds[i].pubDate +")</a></li>"
rssoutput+="</ul>"
feedcontainer.innerHTML=rssoutput
}
else
alert("Error fetching feeds!")
}
window.onload=function(){
rssfeedsetup()
}
</script>
...这是在example page上。
我对此进行了一些谷歌搜索,发现Yahoo Pipes输出PubDate的方式似乎存在一些记录在案的问题。我已尝试按照问题Can't get pubDate to output in Yahoo! Pipes?(结果管道为here)中的说明进行操作,但似乎没有任何区别。
如何从Yahoo Pipes RSS feed在Google Feed上输出正确的PubDate?这有可能吗?
最佳答案
只需更改:
thefeeds[i].pubDate
至:
thefeeds[i].publishedDate
我在Google Code Playground上对此进行了测试:
OnLoad
中,将URL更改为Yahoo Pipes链接feedLoaded
的主循环中,将中间部分编辑为:div.appendChild(document.createTextNode(entry.title));
div.appendChild(document.createTextNode(entry.publishedDate));
console.log(entry);
特别是在JavaScript控制台中,您可以看到
entry
对象具有publishedDate
属性而不是pubDate
。我希望它可以在操场上运行,也应该在您的站点上运行。
关于javascript - 通过Google Feeds API查看时,Yahoo Pipes RSS pubDate显示为 “undefined”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19357960/