Ubuntu Linux

Telnetを使ってHTTPリクエストを発行する方法についての覚え書きです。

 

 

環境

Linux (Ubuntu 16.04)

使い方

telnet にホストのアドレスとポート番号を渡してサーバとTCPの通信を確立します。

$ telnet yahoo.co.jp 80
Trying 182.22.59.229...
Connected to yahoo.co.jp.
Escape character is '^]'.

接続が完了したら HEAD, GET, POST のいずれかのメッソドを使ってHTTPのリクエストを送信します。

HEAD

HEADメッソドを利用してHTTPリクエストを送信するとサーバからHTTPヘッダが返ります。

サーバとの通信を確認するのが目的の場合は HEAD を使うと便利です。

$ telnet yahoo.co.jp 80
Trying 182.22.59.229...
Connected to yahoo.co.jp.
Escape character is '^]'.
HEAD / HTTP/1.0

# HTTPヘッダ
HTTP/1.0 200 OK
Date: Sat, 10 Feb 2018 08:16:48 GMT
P3P: policyref="http://privacy.yahoo.co.jp/w3c/p3p_jp.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV"
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Expires: -1
Pragma: no-cache
Cache-Control: private, no-cache, no-store, must-revalidate
X-XRDS-Location: https://open.login.yahooapis.jp/openid20/www.yahoo.co.jp/xrds
Content-Type: text/html; charset=UTF-8
Age: 0

Connection closed by foreign host.

GET

GETメソッドを利用してHTTPリクエストを送信するとサーバーからHTTPヘッダとページファイルが返ります。

HTMLの記述がそのまま表示されるので読むのは大変ですが一応ページを確認することができます。

$ telnet yahoo.co.jp 80
Trying 182.22.59.229...
Connected to yahoo.co.jp.
Escape character is '^]'.
GET / HTTP/1.0

# 以下HTTPヘッダ (途中省略)
HTTP/1.0 200 OK
Date: Sat, 10 Feb 2018 08:39:02 GMT
P3P: policyref="http://privacy.yahoo.co.jp/w3c/p3p_jp.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV"
...

# 以下ページファイル (途中省略)







...

POST

POSTメソッドを利用してHTTPリクエストを送信するとクライアントからデータを送信してサーバーからHTTPヘッダとページファイルが返ります。

掲示板などサーバーにデータを送信する必要があるWebページで使います。

参考

Hypertext Transfer Protocol – Wikipedia

 

【Linux】Telnetを用いたHTTPリクエストの送信方法
Tagged on:     

コメントを残す