IIS6,VBS& XMLHTTP:执行拒绝访问

时间:2011-03-18 17:44:26

标签: asp-classic vbscript xmlhttprequest directory-security

我有一个从我们网站上提取XML的VBS文件。一旦完成,它将在我们的本地服务器上运行。

我遇到的问题是当我在工作站上运行文件(在XP SP3上运行IIS6)时,我收到错误:

“执行拒绝访问:此虚拟目录不允许执行对象。”

我正在从桌面打开文件,所以我知道有一个安全参数需要更改以允许可执行文件访问XMLHTTP。我该如何解决这个问题?

Function Get_XML(api_url)
    Dim objHTTP, RespText, TempRespText
    Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")

    objHTTP.open "Get", api_url, False
    objHTTP.setRequestHeader "Content-Type", "text/xml"
    objHTTP.send

    RespText = objHTTP.ResponseText

    'Get_XML = CreateObject("Microsoft.XMLDOM")
    'Get_XML.async = False
    'Get_XML.loadXML RespText

'For testing:
    Get_XML = RespText

    Set objHTTP = Nothing
End Function

1 个答案:

答案 0 :(得分:0)

我发现了问题。显然我正在运行的VBScript版本不允许运行MSXML2.ServerXMLHTTP。不确定它是实际版本还是安全更新。所以我改变了:

Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")

要:

Set objHTTP = CreateObject("Microsoft.XMLHTTP")

它完美运行。