# -- coding: utf-8 --_author__ = "HuaQiang Yan"
import socketdef handle_request(client):buf = client.recv(1024) # 接收请求client.send(bytes("HTTP/1.1 200 OK\r\n\r\n", encoding='utf-8'))client.send(bytes("Hello World!", encoding='utf-8'))# 发送请求# bytes():转换成bytes类型# 当然直接encoding不用谢bytes也行,但是按照标准比较不会出错# 相当于 str(1)转换字符串# 相当于list((111,))转换成列表# 相当于bytes('sdfsd',)转换成bytesdef main():sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 创建socket服务端,AF_INET:IPv4,SOCK_STREAM:TCPsock.bind(('0.0.0.0', 8000)) # 监听端口,1024以下为标准端口需要管理员权限开启,1024以上可以随意用sock.listen(5) # 最大连接数while True: # 循环connection, address = sock.accept() # 只要有人连接获取该连接# connection:链接标记位, address:对方的地址handle_request(connection) # 执行handle_reques处理函数connection.close() # 连接断开 #也就是有人访问了该服务端,服务端返回数据后自动断开if __name__ == '__main__':main() # 执行该函数