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

有出国做飞机求同行的网站写文章免费的软件

有出国做飞机求同行的网站,写文章免费的软件,广州疫情历史记录,翻译建设网站1.什么是socket 官方定义: 套接字(socket)是一个抽象层,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。套接字允许应用程序将I/O插入到网络中,并与网络中的其他应用…

1.什么是socket

官方定义: 套接字(socket)是一个抽象层,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。套接字允许应用程序将I/O插入到网络中,并与网络中的其他应用程序进行通信。网络套接字是IP地址与端口的组合。

2.socket()函数

socket.socket([family[, type[, proto]]])
  • family: 套接字家族可以使 AF_UNIX 或者 AF_INET。
  • type: 套接字类型可以根据是面向连接的还是非连接分为 SOCK_STREAMSOCK_DGRAM
  • protocol: 一般不填默认为 0。
AF_INET需经过多个协议层的编解码,消耗系统cpu,并且数据传输需要经过网卡,受到网卡带宽的限制。AF_UNIX数据到达内核缓冲区后,由内核根据指定路径名找到接收方socket对应的内核缓冲区,直接将数据拷贝过去,不经过协议层编解码,节省系统cpu,并且不经过网卡,因此不受网卡带宽的限制。AF_UNIX的传输速率远远大于AF_INETAF_INET不仅可以用作本机的跨进程通信,同样的可以用于不同机器之间的通信,其就是为了在不同机器之间进行网络互联传递数据而生。而AF_UNIX则只能用于本机内进程之间的通信。

3.UDP实现客户端与服务端通信

  • UDFClient
import socket
client = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
client.sendto("This is client hello".encode("utf-8"),("127.0.0.1",8888))
data,server = client.recvfrom(1024)
print(data.decode("utf-8"))
client.close()
  • UDFServer
import socket
server = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
server.bind(("127.0.0.1",8888))
print("UDF Server Started")
while True:data,client = server.recvfrom(1024)print("Receive client messages:",data.decode("utf-8"))server.sendto("This is server hello".encode("utf-8"),client)

运行效果:
在这里插入图片描述

4.TCP实现客户端与服务端通信

  • TCPClient
import socket
client = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
client.connect(("127.0.0.1",8080))
while True:print("请输入发送服务端的内容:")send_data = input()client.send(send_data.encode("utf-8"))if send_data == "close":client.close()print("客户端关闭...")breakdata = client.recv(1024).decode("utf-8")print("服务端响应的数据:",data)
  • TCPServer
import socketserver = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
server.bind(("127.0.0.1",8080))
# 同一时刻,允许多少客户端进行通信
server.listen(5)
client,address = server.accept()
print("服务端启动...")
while True:data = client.recv(1024)msg = data.decode("utf-8")if msg == "close":print("服务端关闭...")server.close()breakprint("客户端发送的内容:", msg)print("请输入回复内容:")client.send(input().encode("utf-8"))

运行效果:

在这里插入图片描述

5.requests模块发送http请求

  • requests模块常用方法:
方法名描述
requests.request(url)构造一个请求,支持以下各种方法
requests.get()发送一个Get请求
requests.post()发送一个post请求
requests.head()获取html请求头信息
requests.put()发送put请求
requests.patch()提交局部修改的请求
requests.delete()提交删除请求
  • 属性及方法
属性描述
response.status_code响应状态码
response.content将response对象转成二进制数据
response.text把response对象转换成为字符串数据
response.encoding定义response对象的编码
response.cookie获取请求后的cookie
response.url获取请求的地址
response.json()内置的JSON解码器
  • 使用requests模块发送一个带参数的get请求
url = "http://192.168.140.123:9090/product/list?type=rate"
headers = {"token": "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIyNTYyODM4MzI1NDMzNDI1OTIiLCJzdWIiOiIxIiwiaWF0IjoxNzA2MTY3Njc3LCJleHAiOjE3MDY3NzI0Nzd9.CB0YpMwQRxGKqqeUj29D0TiFgUO7YDOx04t2-ocfTdo"
}
response = requests.get(url=url, headers=headers)
print(response.text)
  • 使用requests模块发送一个带参数的post请求
url = "http://192.168.140.123:9090/product/page"
params = {"current": 1,"size": 15
}
headers = {"token": "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIyNTYyODM4MzI1NDMzNDI1OTIiLCJzdWIiOiIxIiwiaWF0IjoxNzA2MTY3Njc3LCJleHAiOjE3MDY3NzI0Nzd9.CB0YpMwQRxGKqqeUj29D0TiFgUO7YDOx04t2-ocfTdo","Content-Type": "application/json"
}
response = requests.post(url=url, headers=headers, data=json.dumps(params))
print(response.text)

在这里插入图片描述

http://www.dt0577.cn/news/56968.html

相关文章:

  • 教做年糕博客网站网络营销案例ppt
  • 国外哪些做问卷的网站整合营销策划方案
  • 建设专业网站南宁网站建设网站推广
  • 哪个网站做视频有钱挣百度安全中心
  • 怎么做网站互换链接网站推广seo是什么
  • 柳州在哪里做网站在线网站分析工具
  • 北京市顺义区住房和建设委员会网站百度广告费用
  • 淄博哪里有做网站的seo是什么意思知乎
  • 专门做恐怖的网站建网站一般多少钱
  • 做亚马逊联盟一定要有网站吗彼亿营销
  • 西安专业网站建设公司排名百度一下你就知道官网下载安装
  • 南宁网站设计广州搜索seo网站优化
  • 纯静态网站怎样seo优化入门教程
  • phpcms 网站名称标签网页宣传
  • 网站建设移动端是什么意思搜索图片识别
  • 余姚网站建设找哪家网站优化关键词公司
  • 六安网络推广seo分析案例
  • 找大学生做网站百家号关键词排名
  • 泰安房产网租房郑州seo优化阿亮
  • 佛山优化网站排名收费如何在百度上发表文章
  • 友情链接如何选择网站seo计费系统
  • linux网站如何做ip解析台州百度快照优化公司
  • 网站建设设计视频微信销售平台
  • 怎么网站是谁做的石家庄热搜
  • wordpress 手机端seo关键词排名优化怎样
  • 外贸网站建设注意什么怎么在网上做广告
  • 在北京找工作有哪些招聘网站seo如何优化关键词上首页
  • 建设网站的相关技术百度快速排名点击器
  • 成都电子网站建设东莞seo整站优化火速
  • win10网站开发怎么测试不建站平台哪家好