2012-11-04 152 views
2

我正在嘗試telnet到Web服務器併發送多行請求消息。我必須在請求消息中包含If-modified-since。我爲Win7做了設置。黑屏和錯誤400錯誤請求

例如,當我在我的命令提示符下輸入telnet edition.cnn.com 80時,它會打開一個黑色的空白屏幕,我沒有看到任何鍵入的內容。

然後我在黑屏GET pageName HTTP/1.0上寫了這行,它返回400 Bad Request Error並且說連接關閉了。我該怎麼辦?我使用get pagename作爲例子。

+1

Windows telnet客戶端非常糟糕。用[PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/)再試一次。 –

+0

好吧我終於通過輸入一個頁面獲取內容GET /21838937.asp現在我必須包括如果修改 - 自 –

回答

4

如果您要使用例如一個telnet客戶端手動獲取網頁的頁面,你要記住一個HTTP請求頭的格式:

 
GET pageName HTTP/1.0 
additional header 
additional header 

注意,最後一行是空行。您可能還需要HTTP/1.1才能使某些標題有意義。請閱讀HTTP規範以獲取更多信息和標準頭文件。


「黑屏」只是在命令窗口中運行的telnet程序。

+0

以來,那麼空白屏幕op提到什麼? –

+0

另外,案件事宜。如果你寫'http/1.1',你會得到一個'400 Bad Request'響應,並且將你的頭撞到牆上,不知道哪裏出了問題。問我怎麼知道。 –

1

如果您需要除Web服務器基本交互以外的其他任何內容,我建議使用專門爲此作業製作的工具,例如cURL。它可以讓你設置頁眉等

curl -H "If-Modified-Since:04-Nov-2012 11:59:00 GMT" http://host.com/21838937.asp 
2

400是HTTP錯誤代碼,這意味着你沒有成功地將消息發送到服務器上,它只是無效的HTTP(可能是一個簡單的拼寫錯誤) 黑屏,而不是看到你輸入的是telnet的'正常'行爲(至少我總是這樣做)。

如果您使用像Putty這樣的工具,您可以看到您鍵入的內容,因此您可以更輕鬆地完成此類操作,並發現您的拼寫錯誤。 看到這裏的教程:http://www.hellboundhackers.org/articles/571-spoofing-http-requests-with-putty.html

希望這可以幫助你。