当前位置: 首页 > wzjs >正文

十大网站在线观看渝叶购零售客户电商网站

十大网站在线观看,渝叶购零售客户电商网站,广东微信网站制作报价,成都关键词排名提升先来一张经典的流程图 接下介绍一下大概流程,各个函数的参数大家自己去了解加深一下印象 服务端流程 1.创建套接字:使用 socket 函数创建一个套接字,这个套接字后续会被用于监听客户端的连接请求。 需要注意的是,服务端一般有俩…

先来一张经典的流程图

接下介绍一下大概流程,各个函数的参数大家自己去了解加深一下印象

服务端流程

 1.创建套接字:使用 socket 函数创建一个套接字,这个套接字后续会被用于监听客户端的连接请求。   需要注意的是,服务端一般有俩个描述符,一个用于连接和监听,一个用于通信,这里用socket 函数创建的套接字就是用于和客户端建立连接和监听客户端的连接请求的

例如在 C 语言中:

#include <sys/socket.h>
#include <netinet/in.h>
#include <stdio.h>
#include <unistd.h>int main() {int listenSocket = socket(AF_INET, SOCK_STREAM, 0);if (listenSocket == -1) {perror("socket creation failed");return -1;}// 后续操作return 0;
}

2.绑定地址和端口:使用 bind 函数将创建的套接字与指定的 IP 地址和端口进行绑定,向操作系统表明服务端要监听该地址和端口上的连接请求。示例如下:

struct sockaddr_in serverAddr;
serverAddr.sin_family = AF_INET;
serverAddr.sin_addr.s_addr = INADDR_ANY; // 监听所有可用网络接口
serverAddr.sin_port = htons(8888); // 绑定到 8888 端口if (bind(listenSocket, (struct sockaddr *)&serverAddr, sizeof(serverAddr)) == -1) {perror("bind failed");close(listenSocket);return -1;
}

为什么bind绑定时一定要将套接字和服务器的ip和端口绑定在一起呢?我的理解是客户端相当于一个想入住酒店的旅客,套接字就相当于房卡,有了这张房卡旅客才能知道楼层和具体房间在哪里。

3.监听连接请求:使用 listen 函数将套接字设置为监听状态,指定最大允许的连接请求队列长度。

示例如下:

if (listen(listenSocket, 5) == -1) {perror("listen failed");close(listenSocket);return -1;
}

4.接受连接并创建新套接字:使用 accept 函数接受客户端的连接请求。当有客户端发起连接时,accept 函数会阻塞直到有连接到来,然后返回一个新的套接字用于与该客户端进行数据通信,同时获取客户端的地址信息(包括 IP 地址和端口号)。示例如下:

struct sockaddr_in clientAddr;
socklen_t clientAddrLen = sizeof(clientAddr);
int clientSocket = accept(listenSocket, (struct sockaddr *)&clientAddr, &clientAddrLen);
if (clientSocket == -1) {perror("accept failed");close(listenSocket);return -1;
}

客户端流程

1.创建套接字:同样使用 socket 函数创建一个套接字,用于与服务端建立连接和进行数据通信。示例如下:

int clientSocket = socket(AF_INET, SOCK_STREAM, 0);
if (clientSocket == -1) {perror("socket creation failed");return -1;
}

2.发起连接请求:使用 connect 函数向服务端发起连接请求,在 connect 函数中指定服务端的 IP 地址和端口号。示例如下:

struct sockaddr_in serverAddr;
serverAddr.sin_family = AF_INET;
serverAddr.sin_addr.s_addr = inet_addr("127.0.0.1"); // 服务端 IP 地址
serverAddr.sin_port = htons(8888); // 服务端端口if (connect(clientSocket, (struct sockaddr *)&serverAddr, sizeof(serverAddr)) == -1) {perror("connect failed");close(clientSocket);return -1;
}

3.数据通信:连接建立后,客户端通过自己创建的套接字 clientSocket 与服务端 accept 返回的用于通信的新套接字进行数据交互,使用 send 函数发送数据,使用 recv 函数接收数据。


文章转载自:

http://2IhGW6xt.jxdhc.cn
http://MZ5Gqeg4.jxdhc.cn
http://WuhYqir2.jxdhc.cn
http://gR134Wso.jxdhc.cn
http://uRgIZh33.jxdhc.cn
http://XTLvAGq8.jxdhc.cn
http://NZe21fHi.jxdhc.cn
http://TEJDzse1.jxdhc.cn
http://hR2eoLVJ.jxdhc.cn
http://p0N8x3kI.jxdhc.cn
http://VZngV7cJ.jxdhc.cn
http://aClYzKWr.jxdhc.cn
http://o1QxmDpC.jxdhc.cn
http://hcsSVS4W.jxdhc.cn
http://DoJAnifq.jxdhc.cn
http://2UCIc5C8.jxdhc.cn
http://SQr97w4W.jxdhc.cn
http://dG6qBD4F.jxdhc.cn
http://RWZETwQK.jxdhc.cn
http://IHCWPJvr.jxdhc.cn
http://CgSgBuVO.jxdhc.cn
http://K2ykt92X.jxdhc.cn
http://W61LlcMA.jxdhc.cn
http://bRzihQS6.jxdhc.cn
http://gcev7ULG.jxdhc.cn
http://nHv0GEy9.jxdhc.cn
http://WSbBzNNb.jxdhc.cn
http://InkNPtIC.jxdhc.cn
http://EyxMq1Wn.jxdhc.cn
http://VK0AfloW.jxdhc.cn
http://www.dtcms.com/wzjs/718412.html

相关文章:

  • 城乡和住房建设厅网站首页甘肃建设网站
  • 网站开发模块的需求分析什么软件可以找做网站的
  • 高校网站建设目的做网络歌手的网站
  • word可以做招聘网站吗移动互联网开发安全案例
  • 中国做的最好的网站东莞最新出入政策
  • 制作个人网站怎么制作wordpress标题换行
  • wordpress网站维护教程网络服务禁用后如何启动
  • 站长工具在线免费观看做网站还有价值吗
  • 爱站攻略百度精准获客平台
  • 该怎么跟程序员谈做网站哪些网站是单页面应用程序
  • 做旅游游客产品的网站怎样把网站做成app
  • 如何优化网站关键词排名手机网站标准字体大小
  • html链接网站模板网站服务内容怎么写
  • 网站建设人才招聘网站建站方法
  • php mysql网站开发...购买域名和服务器多少钱
  • 企业建设网站的过程推广产品
  • 网站空间做邮箱怎么用网站做chm
  • 网站服务器 安全计算机开发工具有哪些
  • 网站源码怎么预览抚顺网站制作
  • 怎么诊断网站电商数据分析师
  • 遨游建站网站建站怎么报价
  • 静态网站开发软件学做淘宝店的网站吗
  • 淘客推广个人网站怎么做17做网站联系
  • 英文网站备案百度搭建wordpress
  • 方寸网站建设三只松鼠网络营销案例分析
  • 济南响应式网站开发偃师网站
  • 建设部网站查造价师网站开发文件夹组织结构
  • 昆明网站建设天软科技广州网站 制作信科便宜
  • 金昌市住房和城乡建设局网站成都今天重大新闻事件
  • 曹县商城网站建设wordpress官方免费主题