2

Web サーバーに telnet で接続して、複数行の要求メッセージを送信しようとしていました。リクエスト メッセージにIf-modified-since. Win7の設定を行いました。

たとえばtelnet edition.cnn.com 80、コマンド プロンプトで入力すると、何も表示されない黒い空の画面が表示されます。

次に、この行を黒い画面に書きました。GET pageName HTTP/1.0戻っ400 Bad Request Errorて、接続が閉じられたと表示されます。私は何をすべきか?例として get pagename を使用しました。

4

3 に答える 3

4

たとえば、telnet クライアントを使用して手動で Web ページを取得する場合は、HTTP 要求ヘッダーの形式を覚えておく必要があります。

GET ページ名 HTTP/1.0
追加ヘッダー
追加ヘッダー

最後の行は空行であることに注意してください。HTTP/1.1また、意味を成すために特定のヘッダーが必要になる場合もあります。詳細と標準のヘッダーについては、HTTP 仕様をお読みください。


「黒い画面」は、単にコマンド ウィンドウで実行されている telnet プログラムです。

于 2012-11-04T11:56:18.447 に答える
2

400 は HTTP エラー コードです。これは、サーバーにメッセージを正常に送信したことを意味します。無効な HTTP でした (おそらく単純なタイプミス) 黒い画面と入力内容が表示されないのは、telnet の「通常の」動作です (少なくとも私は常にそれを持っていた)。

Putty のようなツールを使用すると、入力した内容が表示されるため、この種の作業が容易になり、タイプミスを見つけやすくなります。ここのチュートリアルを参照してください: http://www.hellboundhackers.org/articles/571-spoofing-http-requests-with-putty.html

これがお役に立てば幸いです。

于 2012-11-04T11:35:04.500 に答える
1

Web サーバーとの基本的な対話以外のことが必要な場合は、cURLなど、その仕事のために特別に作成されたツールを使用することをお勧めします。ヘッダーなどを設定できます。

curl -H "If-Modified-Since:04-Nov-2012 11:59:00 GMT" http://host.com/21838937.asp
于 2012-11-04T11:34:17.807 に答える