HTTP通信
HTTP通信でメッセージヘッダを取得するサンプルプログラムです
@「ファイル」→「新しいプロジェクト」→「WINDOWSアプリケーション」を選択。
Aツールボックスから上図のように「TextBox」を2つ、「Button」を配置する。
B「textBox2」のプロバティの「Multiline」を「true」
C「button1」をダブルクリックして、次のコード(黒文字部分)を入力する。
using System.Net;
using System.Net.Sockets;
<中略>
private void Form1_Load(object sender, EventArgs e)
}
TcpClient tc = new TcpClient();
try
{
string kurl = textBox1.Text.Replace("http://",
"");
string[] url =kurl.Split('/');
tc.Connect(url[0],
80);
url[0]="";
if ((kurl = String.Join("/",
url)) == "") kurl = "/";
NetworkStream nstr
= tc.GetStream();
//HTTPコマンドをネットストリームに送る
byte[] buf = Encoding.ASCII.GetBytes("HEAD
"+kurl+" HTTP/1.0\r\n\r\n");
nstr.Write(buf, 0,
buf.Length);
nstr.Flush();
byte[] str = new
byte[1024];
nstr.Read(str, 0,
str.Length);
textBox2.Text = Encoding.ASCII.GetString(str);
tc.Close();
}
catch
{
}
}
メソッドの上にマウスポインタをもってくると、ポップアップヒントが表示されます。またF1キーを押すと、ヘルプが立ち上がります。
主なHTTPコマンドには次のようなものがあります。
GET |
指定したページの取得を要求します。 |
HEAD |
メッセージヘッダを要求します。 |
POST |
フォームに入力したデータを送る |
PUT |
サーバーへデータをアップロードする |
DELETE |
サーバー上のデータを削除する |
主な応答メッセージには、次のようなものがあります。
200 |
OK 正常に取得できた |
301 |
恒久的に移転した |
302 |
一時的に移転した |
403 |
Forbidden アクセス拒否 |
404 |
Not Found ファイルが見つからない |
※当サイトは、リンクフリーです。