所以我制作了一个服务器,它向客户端发送图片。但是当截取数据包时,我看到数据包的协议是HTTP。为什么它是HTTP,而不是其他呢?
import socket
file_to_return = open(r"C:\Users\hadad\Desktop\webroot\imgs\abstract.jpg", 'rb')
file_content = file_to_return.read()
server_socket = socket.socket()
server_socket.bind(("0.0.0.0", 80))
server_socket.listen()
client_socket, client_address = server_socket.accept()
client_socket.send(file_content)发布于 2022-05-30 06:19:34
端口80通常是HTTP服务的端口。但是,没有什么可以阻止某人忽略约定,并在端口80上运行一个完全不同的服务/协议。
当然,做这种事的人很容易给自己制造麻烦,也会给别人带来烦恼。
IANA定义了标准端口#到协议映射:
在典型的Linux / UNIX系统上,标准端口分配也在/etc/services文件中列出。
为什么它是HTTP,而不是其他呢?
因为理智的人会遵守惯例。
https://stackoverflow.com/questions/72429786
复制相似问题