vba serverXMLHTTP和Request Header Referer

时间:2011-11-02 13:11:40

标签: vba http-referer serverxmlhttp

我在vba中使用serverXMLHTTP,使用Access 2007在URL中导航。我需要将请求中的Referer头设置为应用程序工作,因为服务器需要Referer头。但是当我在serverXMLHTTP中设置Referer标头时,它不会进入请求。为什么?

示例:

Dim XMLHTTP As Object
   Set XMLHTTP = CreateObject("MSXML2.serverXMLHttp")

   XMLHTTP.Open "GET", "http://X.X.X.X/headers.php", False
   XMLHTTP.setRequestHeader "Referer", "http://www.example.com/"  'in case the server cares
   XMLHTTP.setRequestHeader "TestHeader", "test" 
   XMLHTTP.send ""

    'wait for response
    If XMLHTTP.ReadyState <> 4 Then
      XMLHTTP.waitForResponse 120
    End If

    MsgBox XMLHTTP.responseText
    Set XMLHTTP = Nothing

请求中的标题:

Connection: Keep-Alive
Accept: */*
Accept-Language: pt-br
User-Agent: Mozilla/4.0 (compatible; Win32; WinHttp.WinHttpRequest.5)
TestHeader: test
Host: X.X.X.X

TestHeader没问题......但Referer没有。

你能帮忙吗?

感谢。

1 个答案:

答案 0 :(得分:2)

Microsoft不允许您设置REFERER,因为它被视为允许欺骗的安全风险。