标签:
本文章代码只是为了能够深刻的了解网络通讯,无须把代码背出来,只须看懂,能改改就行了
首先需要创建Socket
//注意在VS2010中需要写成:new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
Socket socket = new Socket(SocketType.Stream, ProtocolType.Tcp);//TCP、UDP。
socket.Connect(new DnsEndPoint("127.0.0.1", 8080));//连接服务器。http协议默认的端口号是80。每个服务器软件监听一个端口(别的软件就不能监听这个端口了),发送给这个端口的数据只会被这个服务器软件接收到。
using (NetworkStream netStream = new NetworkStream(socket))//读写socket通讯数据的流
using (StreamWriter writer = new StreamWriter(netStream))
{
writer.WriteLine("GET /index.html HTTP/1.1");//每一行指令都回车一下
writer.WriteLine("Host: 127.0.0.1:8080");
writer.WriteLine();//空行回车,表示指令结束
}
using (NetworkStream netStream = new NetworkStream(socket))
using (StreamReader reader = new StreamReader(netStream))
{
string line;
while ((line = reader.ReadLine())!=null)
{
Console.WriteLine(line);
}
}
socket.Disconnect(false);
标签:
原文地址:http://www.cnblogs.com/genesis/p/4652778.html