【T3a】HTTPのやり取りを確かめる(5/5)
プロジェクトタイプ | ASP.NET Core (空) |
---|---|
プロジェクト名 | T3a |
ソリューション名 | PIT3 |
ターゲットフレームワーク | .NET 8.0(長期的なサポート) |
最上位レベルのステートメントを使用しない | 使用する(チェックオフ) |
注意
- 本ページの作業内容は 前のページまでの続き になっていることに注意せよ.
- 先に前のページまでをすべて読み,指示されている作業を済ませてから本ページを読むこと.
- プロジェクトの作成作業については準備作業を参照せよ.
3a-5. Tera Term を使ってHTTPのやり取りを手打ちで行う
ネットワークを通じてテキストベースの通信を行う方法の一つにTelnetというプロトコルがある. 今回はこのTelnetのクライアントソフトウェアであるTera Termを用いて, ウェブサーバーに接続し,手打ちで直接HTTPリクエストを実行することを試みる.
それでは Tera Term を起動し,準備作業で作成した設定ファイル RAW_HTTP.ini を読み込もう.このためには 起動時の「Tera Term 新しい接続」ウィンドウで「キャンセル」ボタンをクリックし(_),「設定」→「設定の読み込み」をクリックし(_), セットアップ時に作成したRAW_HTTP.iniファイルを選択する(_).
【★】 前節で作成したプロジェクトが実行中であることを確認しよう.既に実行中であればそのまま以降の作業を行うことができる. 「ファイル」→「新しい接続」で,_のように入力する(_,_). とくに「TCPポート#」はプロジェクトごとに異なるので注意しよう.T3aプロジェクトを実行した際に開くウェブブラウザの アドレスバーに表示されているURLを見ると,そのプロジェクトが何番ポートで待ち受けているかが分かるので事前に調べておこう.
項目 | 設定値 | 注意点 |
---|---|---|
ホスト | localhost | - |
サービス | 「Telnet」を選択 | 「サービス」の項目の選択を変更すると「TCPポート#」の 入力値も変わってしまうので,「TCPポート#」の入力よりも 前に選択すること. |
TCPポート# | ポート番号 | プロジェクトごとにポート番号は異なるので事前に ウェブブラウザのアドレスバーで確認しておくこと. |
ここで「OK」ボタンをクリックすると直ちに接続が開始される.
特に表示などは出ないがウィンドウのタイトルバーの文言が「Tera Term - [未接続] VT
」から「localhost - Tera Term VT
」に変化する(_).
ここまで準備ができたら_のテキストメッセージを打ち込もう.
記号種や大文字小文字,空白や改行の個数なども厳密に同じである必要がある.
HTTPのメッセージを理解するための演習なので内容をよく見てメッセージがどのような構造になっているか確認しながら打ち込むこと.
タイピングに自信がない場合はあらかじめ適当なテキストエディタで_を入力してこれをコピーし,
Tera Term のウィンドウ上で右クリックして貼り付けてもよい.
正しく入力できた場合,_のように表示されるはずである.
失敗した場合(「HTTP/1.1 200 OK
」以外の応答が返ってきた場合など)は,以下の手順でやり直そう.
- Visual Studio 側で例外が発生している場合:
- 誤った入力内容によって例外が発生してプログラムが中断することがある.
- この場合は,デバッグを終了してプログラムを起動しなおす.
- タイトルバーが「
localhost - Tera Term VT
」のまま(つまりまだ接続中)である場合:- 「ファイル」→「接続断」をクリックする.
- 「切断しますか?」というダイアログで「はい」をクリックする.
- タイトルバーが「
Tera Term - [未接続] VT
」となっていることを確認する.
- 「編集」→「バッファのクリア」をクリックする.
- 画面の内容がすべて消去される.
- 「ファイル」→「新しい接続」をクリックする.
- もう一度,【★】からの手順をやり直す.
これが前節で説明した,HTTPの生のリクエストとレスポンスである.確認のためレスポンスのボディ部分を保存してウェブブラウザで表示してみよう.
「編集」→「全て選択」をクリックすると実行結果全体がコピーされる(_)ので(選択した後にコピーのための操作などは不要である点に注意せよ.「全て選択」をクリックするだけで既にコピー済みになる.),適当なテキストエディタに貼り付けてHTML部分(_♠)以外を削除して(_),
response1.html
という名前でファイルに保存して開いてみよう(_).
これはリスト3a-2-1で作成したHTMLファイルそのものであり,図3a-2-1と全く同じに表示されたはずである.
提出時の注意
今回の演習で作成する三個のHTMLファイル,response1~3.html は 作業成果物の一部として提出する必要がある . 提出時は今回作成したソリューション PIT3 のソリューションフォルダ(PIT3.slnがあるのと同じフォルダ; _ )に これらのファイルを置いてから,提出用のZIPファイルを作成すること.
ここまでを確認できたら1つ目のチュートリアルは完了である. 次に進む前に,Visual Studio のデバッグ実行を終了しておこう.また混乱を防ぐため Visual Studio のエディタをすべて閉じておこう.Visual Studio のいずれかのエディタのタブを右クリックして 「すべててのドキュメントを閉じる」をクリックすれば,エディタをすべて閉じることができる.