2011-11-02 97 views
1

我使用vba中的serverXMLHTTP與Access 2007在URL中導航。因爲服務器需要Referer頭文件,所以我需要將請求中的Referer頭設置爲正確的應用程序。但是當我在serverXMLHTTP中設置Referer頭時,它不會請求。爲什麼?vba serverXMLHTTP和Request Header 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是確定....但不引用站點。

你能幫忙嗎?

謝謝。

+0

你能發佈實際的網址嗎? – JimmyPena

回答

1

微軟不允許你設置REFERER,因爲它被認爲是一種允許欺騙的安全風險。