python 网络编程之socket初探
本帖最后由 超级逍遥景天 于 2019-3-28 00:35 编辑*网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。
本程序实现的功能:
简单web服务器的打造。
#导入socketimport socket
#运行这个程序后,浏览器打开localhost:1000 就能访问
#服务器的host 为空字符串,表示接受任意ip地址的连接
#post是端口,这里设置为2000,随便选的一个数字
host =''
port = 1000
s = socket.socket()
#s.bing用于绑定
#注意bing函数的参数是一个tuple
s.bind((host,port))
#用一个无限循环来处理请求
while True:
#先要s.listen开始监听
#listen函数使用主动连接套接口变为被连接套接口,使得一个进程可以接受其它进程的请求,从而成为一个服务器进程
#服务器进程我这里设置为5
s.listen(5)
#当有客户端过来连接的时候,s.accept函数就会返回2个值
#分别是连接和客户端ip地址
#不会死循环是因为s.accept在等待输入
connection,address = s.accept()
#recv可以接受客户端发送过来的数据
#参数是要接受的字节数
#返回值是一个bytes类型
request = connection.recv(1024)
#bytes类型调用decode('utf-8')来转成一个字符串
print('ip and request,{}\n{}'.format(address,request.decode('utf-8')))
#b''表示这是一个bytes对象
response = b'HTTP/1.1 200 hao\r\n\r\n<h1>hello world!</h1>'
#用sendall发送给客户端
connection.sendall(response)
#关闭
connection.close() 感谢楼主分享,一同进步 好简单的一段代码
后排支持。{:1_921:}
页:
[1]