Asp-Classic

如何使用 Microsoft.XMLHTTP 指定代理配置?

  • September 9, 2016

我正在使用經典 asp 頁面中的 Microsoft.XMLHTTP 將資訊發佈到另一個站點…

我希望能夠檢查提琴手的情況,為此我必須找到一種方法來配置 Microsoft.XMLHTTP 以使用代理…

是否可以?Microsoft.XMLHTTP 從哪裡獲取其配置?

多謝

我認為這裡有些事情需要澄清。

ProgID“Microsoft.XMLHTTP”指向與“MSXML2.XMLHTTP”相同的類。此類使用 Internet Explorer 使用的 WinINET HTTP 協議棧,因此將使用在 PC 的 Internet 設置中找到的任何代理配置。

因此,對於“Microsoft.XMLHTTP”,proxycfg 命令沒有用。

XMLHTTP 的替代方法是“MSXML2.ServerXMLHTTP”。此類使用 WinHTTP HTTP 協議棧,該協議棧被設計為輕量級和伺服器友好型。在 WinINET 不是的同一程序中,在多個執行緒中使用多個實例是安全的。由於這個原因,在伺服器端 ASP 程式碼中應該使用 ServerXMLHTTP。

WinHTTP 不使用 WinINET 使用的 Internet 設置,因此要配置 ServerXMLHTTP 將使用的代理,您需要使用 proxycfg 命令。一個非常有用的命令是:-

proxycfg -u

它將目前 WinINET 代理設置複製到 WinHTTP 使用的設置,如果您使用 fiddler 之類的工具,這對於在 fiddler 啟動後開始監視通過 WinHTTP 的流量很有用。(請注意您跟進proxycfg -d刪除代理設置)。

ServerXMLHTTP 也有一個setProxy方法,它允許以程式碼動態配置實際的代理設置。

引用自:https://stackoverflow.com/questions/1041886