C#搭建Socket服务器与客户端,助你快速入门(极简版)

这篇具有很好参考价值的文章主要介绍了C#搭建Socket服务器与客户端,助你快速入门(极简版)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、服务器的搭建

新建一个C#控制台应用,用于搭建服务器。

// 设置接收字节的容器,容量大小为1024个字节,客户端发来的字节都存在这里
static byte[] buffer = new byte[1024];

static void Main(string[] args)
{
    // 建立Tcp服务器socket,名为server,用于监听客户端连接
    Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

    // 配置端口。“127.0.0.1”是本机IP地址,也可在命令提示符(黑窗口)输入ipconfig,查看ipv4地址
    // 7777是端口号、可在1025~65535随便选。
    EndPoint endpoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 7777);

    // 绑定端口
    server.Bind(endpoint);

    // server开始监听客户端连接。10,是指服务器能够同时允许10个客户端连接,可写其他
    server.Listen(10);
    Console.WriteLine("服务器开启成功,开始监听~");

    // 当有客户端接入时,新建名为serverManager的Socket,用于接收客户端的消息。
    // 前面的server是接收客户端消息用,而这里的serverManager是接收客户端消息用,各司其职。
    Socket serverManager = server.Accept();
    
    // 返回收到的字节的实际长度
    int length = serverManager.Receive(buffer);
    
    // 用Encoding.UTF8.Getstring(),将收到的实际长度的字节转化为string类型
    string mes = Encoding.UTF8.GetString(buffer, 0, length);
    Console.WriteLine("收到了" + length + "个字节,内容为:" + mes);
    
    Console.ReadKey();
}

注:serverManager除了接收消息,也可以发送消息。基本除了监听,其他活它都干。

二、客户端的搭建

再建一个C#控制台应用,用于搭建客户端。

static void Main(string[] args)
{
    // 建立Tcp客户端socket,名为client,用于监听客户端连接,和建立服务器的Socket一样的配方
    Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

    // 配置端口,“127.0.0.1”、7777,均和服务器保持一致
    EndPoint endpoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 7777);

    // 接入端口
    client.Connect(endpoint);

    string content = "这里是客户端";

    // 用Encoding.UTF8.GetBytes(),将要发送的内容转化为字节
    byte[] data = Encoding.UTF8.GetBytes(content);

    // 发送字节
    client.Send(data);
}

搭建好之后,先运行服务器端,

c# socket,服务器,c#,tcp/ip,网络

再运行客户端。

c# socket,服务器,c#,tcp/ip,网络

一个简单的服务器和客户端就搭建完成。文章来源地址https://www.toymoban.com/news/detail-701777.html

到了这里,关于C#搭建Socket服务器与客户端,助你快速入门(极简版)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Socket实现服务器和客户端(手把手教会)

    😎 作者介绍:我是程序员行者孙,一个热爱分享技术的制能工人。计算机本硕,人工制能研究生。公众号:AI Sun,视频号:AI-行者Sun 🎈 本文专栏:本文收录于《网络编程实战》系列专栏,相信一份耕耘一份收获,我会手把手教分享网络编程实战内容,届时可以拳打字节,

    2024年04月12日
    浏览(36)
  • python socket监测服务器和客户端连接状态

    服务器端和客户端的连接状态,应该是没有单独的函数返回或是接口监测的,看网上很多资料说需要监测心跳,这确实是一个普遍解决监测状态的办法,但是对我的项目却显得有些被动,其实对一般的项目包括我的,用try…except就可以满足,里面设置标志位,if判断一下就可

    2024年02月13日
    浏览(30)
  • Linux网络编程:socket、客户端服务器端使用socket通信(TCP)

    socket(套接字),用于网络中不同主机间进程的通信。 socket是一个伪文件,包含读缓冲区、写缓冲区。 socket必须成对出现。 socket可以建立主机进程间的通信,但需要协议(IPV4、IPV6等)、port端口、IP地址。          (1)创建流式socket套接字。                 a)此s

    2024年02月11日
    浏览(45)
  • Socket网络编程(TCP/IP)实现服务器/客户端通信。

    一.前言 回顾之前进程间通信(无名管道,有名管道,消息队列,共享内存,信号,信号量),都是在同一主机由内核来完成的通信。 那不同主机间该怎么通信呢? 可以使用Socket编程来实现。 Socket编程可以通过网络来实现实现不同主机之间的通讯。 二.Socket编程的网络模型如

    2024年02月08日
    浏览(67)
  • Linux网络编程:Socket服务器和客户端实现双方通信

    目录 一,什么是网络编程 二,为什么使用端口号 三,TCP协议与UDP协议 ①TCP(传输控制协议) ②UDP(用户数据报协议,User Data Protocol) ③总结归纳 四,Socket服务器和客户端的开发流程 五,服务器和客户端相关API说明 ①socket()函数 ②bind()函数 ③listen()函数 ④accept()函数 ⑤客户端

    2024年02月11日
    浏览(52)
  • socket的使用 | TCP/IP协议下服务器与客户端之间传送数据

    谨以此篇,记录TCP编程,方便日后查阅笔记 注意:用BufferedWriter write完后,一定要flush;否则字符不会进入流中。去看源码可知:真正将字符写入的不是write(),而是flush()。 服务器端代码: 客户端代码: 运行后结果: 服务器端: 客户端: 参考资料: https://www.bilibili.com/vid

    2024年02月09日
    浏览(43)
  • 【Java网络编程】基于UDP-Socket 实现客户端、服务器通信

    ​ 哈喽,大家好~我是你们的老朋友: 保护小周ღ   本期为大家带来的是网络编程的 UDP Socket 套接字,基于 UDP协议的 Socket 实现客户端服务器通信 ,Socket 套接字可以理解为是,传输层给应用层提供的一组 API,如此程序,确定不来看看嘛~~ 本期收录于博主的专栏 : JavaEE_保

    2024年02月02日
    浏览(46)
  • Linux网络编程:Socket套接字编程(Server服务器 Client客户端)

    文章目录: 一:定义和流程分析 1.定义 2.流程分析  3.网络字节序 二:相关函数  IP地址转换函数inet_pton inet_ntop(本地字节序 网络字节序) socket函数(创建一个套接字) bind函数(给socket绑定一个服务器地址结构(IP+port)) listen函数(设置最大连接数或者说能同时进行三次握手的最

    2024年02月12日
    浏览(67)
  • Linux下网络编程(3)——socket编程实战,如何构建一个服务器和客户端连接

            经过前几篇的介绍,本文我们将进行编程实战,实现一个简单地服务器和客户端应用程序。 编写服务器程序          编写服务器应用程序的流程如下:         ①、调用 socket()函数打开套接字,得到套接字描述符;         ②、调用 bind()函数将套接字

    2024年02月03日
    浏览(46)
  • 网络编程-Socket通信实现服务器与客户端互传文件(JAVA语言实现)

    在网络通信协议下,实现网络互连的不同计算机上运行的程序间可以进行数据交换. 网络编程三要素:ip地址、端口、协议 ip地址: 每台计算机指定的一个标识符,127.0.0.1是回送地址,可以代表本机地址 ,一般用来测试使用 ipconfig:命令行中查看本机地址 ping ip地址:检查网络是

    2023年04月14日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包