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

网站开发之前前后端不分离自助建站源码下载

网站开发之前前后端不分离,自助建站源码下载,网络前端开发招聘,盘锦949公社最新招聘文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 一.客户端与服务端通信原理 1. 服务器端 服务器端的主要任务是监听来自客户端的连接请求,并与之建立连接,然后接收和发送数据。 创建套接字:首先&#xff0…

文章目录

  • 前言
  • 一、pandas是什么?
  • 二、使用步骤
    • 1.引入库
    • 2.读入数据
  • 总结

  一.客户端与服务端通信原理

1. 服务器端

服务器端的主要任务是监听来自客户端的连接请求,并与之建立连接,然后接收和发送数据。

  • 创建套接字:首先,服务器需要创建一个套接字(socket),这个套接字将用于监听来自客户端的连接请求。在创建套接字时,需要指定地址族(如IPv4的socket.AF_INET)和套接字类型(对于TCP,使用socket.SOCK_STREAM)。

  • 绑定地址和端口:服务器需要将套接字绑定到一个具体的IP地址和端口号上,以便客户端能够找到并连接到它。

  • 监听连接:服务器使用listen()方法开始监听连接请求。此时,服务器处于等待状态,直到接收到客户端的连接请求。

  • 接受连接:当服务器接收到客户端的连接请求时,它使用accept()方法来接受这个连接。accept()方法会返回一个包含新连接的套接字和客户端地址的元组。服务器将使用这个新连接的套接字来与客户端进行通信。

  • 数据收发:一旦连接建立,服务器和客户端就可以通过各自的套接字发送和接收数据了。数据可以是文本、二进制文件等任何类型的数据。

  • 关闭连接:通信完成后,服务器和客户端都应该关闭它们各自的套接字,以释放系统资源。

2. 客户端

客户端的主要任务是连接到服务器,并与之进行数据交换。

  • 创建套接字:与服务器类似,客户端也需要创建一个套接字,并指定地址族和套接字类型。

  • 连接服务器:客户端使用connect()方法连接到服务器。在调用connect()方法时,需要传入服务器的IP地址和端口号。

  • 数据收发:一旦连接建立,客户端就可以通过套接字发送数据到服务器,并接收服务器发回的数据了。

  • 关闭连接:通信完成后,客户端应该关闭套接字,以释放系统资源。

3. 原理总结

  • TCP三次握手:在TCP通信中,建立连接的过程涉及到三次握手。这确保了双方都能够确认对方的存在和准备接收数据。

  • 数据传输:TCP协议确保了数据的可靠传输。它通过序列号、确认应答、超时重传等机制来确保数据的顺序、完整性和无重复传输。

  • 连接管理:TCP连接是面向连接的,这意味着在数据交换之前必须先建立连接,并在数据交换完成后关闭连接。

  • 错误处理:在通信过程中,可能会遇到各种错误(如网络中断、连接超时等)。Python的socket模块提供了相应的异常处理机制,允许开发者在发生错误时采取适当的措施。

二.Socket模块

套接字(Socket)是一个非常重要的概念,它提供了一个用于网络通信的接口。套接字允许不同计算机上的程序之间进行数据传输。这种通信方式既可以是本机上的程序间的通信,也可以是跨网络的计算机之间的通信

在Python中进行TCP和UDP通信,可以使用内置的socket模块。socket模块提供了用于创建客户端和服务器端套接字的函数和方法。以下是一些常用的TCP通信函数:

服务端

  • 创建一个TCP套接字:
socket.socket(socket.AF_INET, socket.SOCK_STREAM):
  • 将套接字绑定到指定的地址和端口。
socket.bind(IP,端口)
  • 开始监听传入的连接请求。 
socket.listen(同时处理的请求数)
  •  接受一个连接请求,返回一个新的套接字对象,以及客户端的地址
socket.accept()
  • socket.accept() 是服务器在调用 listen() 方法之后等待客户端连接时使用的。这个调用会阻塞程序运行,直到有一个客户端连接到服务器,再执行下面程序
  • 当客户端成功连接到服务器时,accept() 方法会返回一个元组,其中包含两个元素:
    • 第一个元素包含服务端接收客户端连接的IP+端口
    • 第二个元素包含客户端连接的IP+端口

7625db5e63c5477182fe50d6e4f9c065.png

 客户端

  • 连接到服务端的地址和端口
socket.connect(IP,端口)
  •  发送数据到连接的另一端
socket.send(data)
  •  接收来自连接的数据
socket.recv(字节大小)
  •  关闭套接字连接
socket.close()

三.演示案例

服务端

import socket# 创建TCP服务器端
Tcp_Server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
Tcp_Server.bind(("0.0.0.0",8888))  #将IP和端口与套接字绑定
Tcp_Server.listen(10)   #此处设置该进程socket最多处理的连接数是10#等待客户端连接
while True:Tcp_Client,info = Tcp_Server.accept() #阻塞程序运行直到收到客户端连接Tcp_Client.send("成功连接服务器!".encode()) #将发送的数据进行UTF-8编码

客户端 

import socket
Tcp_Client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)#连接服务器
Server_IP = ("127.0.0.1",8888)
Tcp_Client.connect(Server_IP)  #连接服务器127.0.0.1中端口号为8888的进程socket#接收服务端信息
data_Server = Tcp_Client.recv(1024) #接收服务端的字节数为1024
print(data_Server.decode()) #将接收的二进制数据转换为字符串

总结

 

 

http://www.yayakq.cn/news/367460/

相关文章:

  • 备案 网站名花生壳如何建设网站
  • 关键字优化搜索引擎优化学习
  • 做我的狗哪个网站可以看e特快做单子的网站
  • 甘肃省住房与城乡建设厅网站个体户可以注册网站建设服务
  • 网站建设在哪里今天的新闻内容
  • 做网站充值系统俄文网站设计
  • 网站制作网页设计在哪里建网站
  • 广州建设银行网站首页企业网站seo服务
  • 电子商务网站建设与开发微信商城怎么开店
  • 免费三网合一网站系统wordpress 预览插件
  • 做系统的网站好做网站需要多少屏
  • 贸易公司网站案例用网站做宣传的方案
  • 域名代备案网站昆明如何做百度的网站
  • 湖南铁军工程建设有限公司官方网站免费 网站管理系统
  • 怎么在网站上做抽奖网站落地页制作
  • 做商城网站的项目背景图片wordpress如何更改导航栏的样式
  • 昌乐网站制作太原建站司点击查看
  • 郴州免费招聘网站东莞农村商业银行
  • 网站开发技术教程wordpress跟新到5.0.1是英文
  • 企业做国外网站多少钱龙口城乡建设局官方网站
  • 贸易公司做网站有优势吗福建省网络公司排名
  • 做网站好看的旅行背景图片洛阳做网站公司有哪些
  • 泗洪县建设局网站怎么查不到石家庄设计公司
  • 现在哪个网站做网站好学习完成网站建设作业
  • 网页建站水文化建设网站
  • 网站备案要拍照教育类网站开发文档
  • seo网站设计招聘专业的网站建设官网
  • 课程建设类教学成果奖网站上海制作网页的公司有哪些
  • iis 网站访问权限黑龙江建设网电话
  • 国家电网网站制作通化网站推广