外部链接问题:通过经典 ASP 从外部 XML 文件获取数据 [复制]

External link problem get data from external XML file via classic ASP [duplicate]

提问人:zokanzi 提问时间:4/11/2023 最后编辑:zokanzi 更新时间:4/12/2023 访问量:75

问:

我正在使用下面的代码从本地文件获取数据。

Source = "kur.xml"

Set kurlar = Server.CreateObject("msxml2.DOMDocument.6.0" )
kurlar.async = false
kurlar.resolveExternals = false
kurlar.setProperty "ServerHTTPRequest" ,true

kurlar.load(Source)

Set USD = kurlar.selectSingleNode("//Tarih_Date/Currency[@Kod = 'USD']")
USDS = USD.selectSingleNode("BanknoteSelling").text

Set EUR = kurlar.selectSingleNode("//Tarih_Date/Currency[@Kod = 'EUR']")
EURS = EUR.selectSingleNode("BanknoteSelling").text

但是当我将xml源设置为外部时,我收到“object required: 'USD'”错误

Source = "https://www.tcmb.gov.tr/kurlar/today.xml"

顺便说一句,两个来源的内容完全相同。

从外部源导入数据时,是否需要执行其他操作?

编辑:此链接对我不起作用。当我使用外部源而不是本地文件时,会出现我的问题。我在 @John 的建议下使用 ServerXMLHTTP 解决了我的问题。

XML ASP-经典 MSXML6

评论

0赞 zokanzi 4/12/2023
不,当我使用外部源而不是本地文件时,会出现我的问题。
1赞 user692942 4/12/2023
这回答了你的问题吗?如何使用 MSXML2。ServerXMLHTTP从另一个站点抓取数据?

答:

1赞 John 4/12/2023 #1

我已经尝试了您的代码,它从我所在的位置运行良好,但这是另一种方法

<% 
Source = "https://www.tcmb.gov.tr/kurlar/today.xml"
Set http = Server.CreateObject("msxml2.ServerXMLHTTP.6.0")
http.Open "GET", Source, False
http.Send

Response.codepage = 65001
Response.charset = "utf-8"

Set kurlar = Server.CreateObject("msxml2.DOMDocument.6.0" )
kurlar.loadXML http.responseText


Set USD = kurlar.selectSingleNode("//Tarih_Date/Currency[@Kod = 'USD']")
USDS = USD.selectSingleNode("BanknoteSelling").text

Set EUR = kurlar.selectSingleNode("//Tarih_Date/Currency[@Kod = 'EUR']")
EURS = EUR.selectSingleNode("BanknoteSelling").text

Response.write usds & ", " & eurs
%>

评论

0赞 zokanzi 4/12/2023
它工作正常,我从没想过要这样使用它。谢谢@John