2014-11-06 83 views
-1

我試圖在Internet Explorer中運行這個vbscript,但它似乎不起作用。它可以在我製作.vbs文件並雙擊時運行,但不能在瀏覽器上運行。如何在Internet Explorer中運行vbs

Dim strWebsite 

strWebsite = "www.site.org" 

If PingSite(strWebsite) Then 
    WScript.Echo "Web site " & strWebsite & " is up and running!" 
Else 
    WScript.Echo "Web site " & strWebsite & " is down!!!" 
End If 


Function PingSite(myWebsite) 
    Dim intStatus, objHTTP 

    Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5.1") 

    objHTTP.Open "GET", "http://" & myWebsite & "/", False 
    objHTTP.SetRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MyApp 1.0; Windows NT 5.1)" 

    On Error Resume Next 

    objHTTP.Send 
    intStatus = objHTTP.Status 

    On Error Goto 0 

    If intStatus = 200 Then 
     PingSite = True 
    Else 
     PingSite = False 
    End If 

    Set objHTTP = Nothing 
End Function 

這樣做的正確方法是什麼?

+1

爲什麼這個標籤爲'javascript'?你可以在你輸入這個文件的地方顯示你的html代碼嗎? – jasonscript 2014-11-06 02:07:36

回答

1

從MS媒體熱炒:VBScript is no longer supported in IE11 edge mode(正如你可能知道,其他瀏覽器(不上的MS渲染運行)並沒有想運行VBS)

「正確」的方式是將這種到JavaScript(沒有認真,你現在仍然可以嘲笑一下,但是顯然它已經過時了,建議現在更新舊的代碼),這並不困難,因爲這種技術起源於MS。你仍然會做頭部請求並檢查狀態 - 否。

這應該讓你開始:HTTP HEAD Request in Javascript/Ajax?

編輯(解決您的評論):
不要指望可靠設置useragent雖然(是,像上面的腳本,似乎更的事過去):

EDIT2:
我看/想你想以某種方式來區分你的應用程序:(?在日誌中也許)MyApp 1.0;。如果是這樣的話,你可能要添加一些自定義的標題改爲:
How can I add a custom HTTP header to ajax request with js or jQuery?

此外,大多數服務器日誌(默認)在GET -STRING回暖,您可能需要使用/添加到該(所以如果你的自定義頭文件不顯示,你不需要改變日誌格式)?

+0

是的,但有可能改變useragent?這就是爲什麼林掙扎着。 – user198989 2014-11-06 02:19:11

+0

是的。如果編輯2在IE上工作,那會很棒,但是很顯然,這些ajax post方法在IE中不起作用。 – user198989 2014-11-06 02:45:48

相關問題