0

我有一个用 Classic ASP 编写的基于 Web 的 RSS 阅读器,我在过去的公共项目中成功使用过它。但是,它不想在这个内部项目上进行合作。

相关代码:

set xmlDoc = createObject("Msxml.DOMDocument")
xmlDoc.async = false
xmlDoc.setProperty "ServerHTTPRequest", true
xmlDoc.load(extURL)

If (xmlDoc.parseError.errorCode <> 0) then
    Response.Write "XML error #" & xmlDoc.parseError.errorCode & ": " & xmlDoc.parseError.reason
Else
    'Not pertinent as it never gets here...
End If

我收到以下错误:

XML error #-2146697208: The download of the specified resource has failed.

它在其他地方工作得很好,只是不适用于这个特定的项目。它是一个内部项目,所以我无法链接到它。饲料形成正确,一切都很有趣。

不,我不能放弃它并使用编程语言 [在此处插入反 CLASP 咆哮]。如果这就是您要添加的全部内容,请不要发布。

它在 Server 2003 上运行,如果我需要查找任何配置信息等,我确实可以访问服务器。

编辑- 回答几个问题:

  • 我一直在测试这个,extURL 暂时是同一服务器上的一个页面。
  • 我已将 URL 手动输入到 IE6 和 IE7 中(根据公司政策没有 Fx),并且加载正常。
  • 我已经通过家里的验证器运行了生成的 RSS 提要,它验证得很好。
  • 我保存了生成的 XML 文件并尝试加载它,但得到了同样的错误。
  • 可能应该早点提到这一点,但由于我无法与另一台服务器进行测试,所以我在不同的端口上运行测试站点 - http://subdomain.maindomain.com:5150/rss.asp其他一切我已发布仍然适用。

最后一个随机想法:我确实打开了基本身份验证,因此我可以根据 NT Logon 等限制对站点某些部分的访问。这会是问题吗?我不能把它关掉,因为这会否定一些安全代码......

多谢你们。:)

再次编辑- 结果是导致问题的身份验证。部分原因是食物链上游的某个人更改了一些组策略,部分原因是我自己对作为服务器管理员的新角色(除了作为开发人员)缺乏经验。

4

2 回答 2

0

您能否确保可以通过浏览器或 ping 从服务器访问外部 URL?该错误表明下载失败,所以这是我要检查的第一件事。

于 2009-03-19T21:11:35.157 回答
0

此时我会检查服务器。

  1. 验证它发送的内容类型是 text/xml - 你可以通过在 Firefox 中加载你的 extURL 变量值来做到这一点
  2. 尝试将文件下载到磁盘并重新编写代码以从磁盘读取文件。这行得通吗?

在您回答这些问题后更新:

我确实打开了基本身份验证,因此我可以根据 NT Logon 等限制对站点某些部分的访问。这会是问题吗?

嗯,是的!明确地。您的 ASP 脚本无法在正在运行的身份验证对话框中输入您的用户名和密码,因此它永远无法下载您的资源。

但是您还说您将 xml 放在本地文件中并修改了代码以加载它。如果你得到同样的错误,那么它绝对是 XML 的格式(一个坏字符,或者没有根元素,或者其他奇怪的东西)......但是你说 IE 可以打开它,对吗?

一些截图怎么样?

于 2009-03-19T21:18:08.213 回答