Microsoft.XMLDOM - Facebook页面RSS - 系统错误:-2147012866

时间:2015-06-10 10:05:07

标签: xml facebook asp-classic rss

我成功连接了我的经典ASP网站,阅读了Facebook页面RSS提要并返回最新帖子的详细信息。这在设置时工作得非常好,但是前几天我注意到它不再起作用了。我已经摆弄了相当多的东西,但我所做的一切似乎都有所作为,到目前为止,我没有找到遇到这个问题的其他人。

我的代码如下所示:

    dim TheFeed, objXML, objRoot, objItems, TheTitle, TheLink, objItem, TheDate, TheContent

    TheFeed = "https://www.facebook.com/feeds/page.php?format=rss20&id=1472957232934372"

    Set objXML = Server.CreateObject("Microsoft.XMLDOM")

    objXML.Async = False
    objXML.SetProperty "ServerHTTPRequest", True
    objXML.SetProperty "SelectionLanguage", "XPath"
    objXML.ResolveExternals = True
    objXML.ValidateOnParse = True
    objXML.Load(TheFeed)

    If (objXML.parseError.errorCode = 0) Then
       Set objRoot = objXML.documentElement
       If IsObject(objRoot) = False Then
           Response.Write "There was an error retrieving the feed"
       Else
           Set objItems = objXML.selectNodes("//item[position() <= 1]")
              If IsObject(objItems) = True Then
                  For Each objItem in objItems
                      On Error Resume Next
                      TheTitle =  objItem.selectSingleNode("title").Text
                      TheLink =  replace(objItem.selectSingleNode("link").Text,"&","&amp;")
                      TheDate =  left(objItem.selectSingleNode("pubDate").Text,16)
                      TheContent =  objItem.selectSingleNode("description").Text 
                Next
             End If
         Set objItems = Nothing
       End If
    Else
        Response.Write "There was an error retrieving the blog: " & objXML.parseError.reason
    End If
    Set objXML = Nothing

它产生的结果:

  

检索博客时出错:系统错误:-2147012866。

有没有其他人在最近尝试阅读Facebook RSS Feed时遇到任何问题?有谁知道这里可能是什么问题? 任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

尝试使用最新版本的Microsoft XML处理器。用以下代码替换第三行代码:

Set objXML = Server.CreateObject("Msxml2.DomDocument.6.0")

我注意到您似乎没有输出XML节点值,只是将它们写入变量。如果您循环遍历一组元素,则每次迭代都会覆盖TheTitleTheLinkTheDateTheContent的值,如果您{{1稍后在您的页面中,您将只显示要解析的最后一条记录