最简单的Web服务器事例分析
本案例中应用到得一些类和方法先一一列出来
1.IPAddress类用来表示一个IP地址
1.1 IPAddress.Parse("192.168.43.104") 将一串ip地址字符串转换为IP地址
1.2 IPAddress.Loopback 获得本机回环地址 即:127.0.0.1
2.IPEndPoint类(端点) 说白了就是ip地址和端口的组合(IP:Point) 他能唯一确定网络中的一台电脑的某一个应用程序
IPEndPoint endPoint = new IPEndPoint(IPAddress.Parse("192.168.43.104"), 8080); //创建了一个ip地址为192.168.43.104端口号位8080的网络端点
2.1.1 Address 获取或设置终结点的 IP 地址 ex:endPoint.Address //192.168.43.104
2.1.2 AddressFamily 获得网络协议 ex:endPoint.AddressFamily //http
2.1.3 AddressPoint 获得端口号信息 ex:endPoint.Point //8080
3.Socket类 位于System.Net.Socket命名空间中 其封装了Socket(套接字)的操作。
3.1 Listen 设置基于连接通信的socket进入监听状态,并设置等待队列的长度。 ex:socket.Listen(10) //只允许10个客户端同时发生请求
3.2 Accept 等待一个新的连接,当新的连接到达的时候,返回一个针对新连接的Socket对象。即每个建立连接的客户端都对应有一个Socket对象在服务器端,客户端通过这个对象就可以和服务端进行连接通信了。 ex: Socket client = socket.Accept();
3.3 Receive 通过Socket接受字节数据,保存到一个字节数据中,返回一个int型的数据(实际接收的字节数)。
ex://新建一个缓冲区
byte[] buffer = new byte[2048];
//接受数据
int length = client.Receive(buffer,buffer.Length,SocketFlags.None);
3.4 Send 故名思议 就是发送数据吧 没错 send通过Socket发送预先保存在字节数组中的数据。
下面是完整的事例代码:
//----------------------------------------------------------------------------------------
IPEndPoint endPoint = new IPEndPoint(IPAddress.Parse("192.168.43.104"), 8080);
//创建socket,使用ipv4地址,传输协议为tcp,双向、可靠、基于连接的字节流
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//将其绑定到一个端点上
socket.Bind(endPoint);
//设置连接队列的长度
socket.Listen(10);
相关新闻>>
- 非服务器控件绑定数据
- C#.net udp点对点聊天程序
- 使用HttpWebRequest下载经过重定向的文件
- HttpWebRequest GET HTTPS页面出现IOException: 由于远程方已关
- System.Web.Caching.Cache删除某键后,希望同时触发其它动作(关
- winform下通过webclient使用非流方式上传(post)数据和文件
- ASP.NET温故而知新学习系列之委托与事件—服务器端添加客户端事
- asp.net运行原理
- asp.net服务器推送(ServerPush)和客户端拉拽技术
- .net第三方插件Infragistics中的UltraWebTab控件,切换tab页的on
- 发表评论
-
- 最新评论 更多>>