.Net网络编程——服务端获取客户端连接
2015-05-20 22:20
316 查看
一,客户端服务端连接图示
其中,在客户端和服务端的socket中,都报存这连接的信息;客户端通过connect连接,服务端可以调用AcceptTcpClient来获取链接到服务端的客户端,每一个客户端和服务端的连接都对应这唯一一个Socket.
二,服务端获取连接示例
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.Net.Sockets; namespace 获取单一客户端连接 { class Program { static void Main(string[] args) { #region 获取单一客户端连接 //Console.WriteLine("服务端启动啦啦啦。。"); //IPAddress ip = new IPAddress(new byte[] { 127, 0, 0, 1 }); //TcpListener listener = new TcpListener(ip, 8500); //listener.Start(); //Console.WriteLine("服务端开始监听8500。。。。"); ////获取一个连接,中断方法 //TcpClient remoteClient = listener.AcceptTcpClient();//获取一个与客户端的连接,同时它返回一个TcpClient类型示例,此时它所包装的是由服务端去往客户端的socket(这是一个block method) ////打印连接到客户端的信息 //Console.WriteLine("客户端连接成功。本地:{0}------>客户端{1}", remoteClient.Client.LocalEndPoint, remoteClient.Client.RemoteEndPoint); #endregion #region 获取多个客户端的连接 Console.WriteLine("服务端启动啦啦啦。。"); IPAddress ip = new IPAddress(new byte[] { 127, 0, 0, 1 }); TcpListener listener = new TcpListener(ip, 8500); listener.Start(); Console.WriteLine("服务端开始监听8500。。。。"); while (true) { /* 将服务端放入一个始终执行的循环中。 */ //获取一个连接,中断方法 TcpClient remoteClient = listener.AcceptTcpClient();//获取一个与客户端的连接,同时它返回一个TcpClient类型示例,此时它所包装的是由服务端去往客户端的socket(这是一个block method) //打印连接到客户端的信息 Console.WriteLine("客户端连接成功。本地:{0}------>客户端{1}", remoteClient.Client.LocalEndPoint, remoteClient.Client.RemoteEndPoint); } #endregion } } }
PS:AcceptTcpClient是一个同步的方法,对比AJAX的异步,可以发现如果服务端获取不到客户端的连接,就会一直阻塞在这里,而不是像AJAX请求数据的时候,下面的东西可以继续,成功后回调。
相关文章推荐
- .Net网络编程——服务端获取客户端连接
- .Net网络编程——使用TcpClient与TcpListener建立客户端与服务端连接
- .Net网络编程——使用TcpClient与TcpListener建立客户端与服务端连接
- 连接主机Java网络编程(一)- 一个简单的服务端/客户端应用程序
- 网络编程(23)—— socket客户端连接上服务端是在listen之后而非在accept之时
- JAVA SOCKET网络编程,服务端接收多个客户端连接的实现
- Linux 树莓派 网络编程中服务端通过套接字获取客户端ip地址
- 迟迟开始学习的网络编程,C语言客户端服务端,python客户端服务端和mini木马
- linux socket网络编程:fcntl select(多个客户端连接服务器端情形)
- Android编程获取网络连接状态(3G/Wifi)及调用网络配置界面
- android网络编程之——客户端获取网页的图片
- C#网络编程之连接oracle数据库获取数据
- linux socket网络编程:fcntl select(多个客户端连接服务器端情形)
- Android编程获取网络连接状态(3G/Wifi)及调用网络配置界面
- 网络编程(浏览器客户端-自定义服务端)
- linux下网络编程2:服务端和客户端进行TCP通信实例
- 没有任何关闭socket的日志,客户端和服务端进程都在, 网络连接完好, 为什么进行某操作后好好的tcp连接莫名其妙地断了呢?
- 网络编程 客户端 服务端 函数 流程 图示 来自深入理解计算机系统一书 P704
- Java基础-网络编程(浏览器客户端-自定义服务端)
- JAVA网络编程-TCP客户端与服务器端连接