import socketdef handle_client(socket_con): """ 接收来自客户端的请求,并接收请求报文,解析,返回 """ # 服务器接收客户端的请求报文 request = socket_con.recv(4096).decode() print(request) # 服务器拼接响应报文并回复 response_line = 'HTTP/1.1 200 OK
' response_head = 'Server:skylark 2.0
' response_head += 'Content-Type:text/html;charset=utf-8
' # response_body = '这是显示的内容!
' # 在响应体这里略作改动 # 确认页面文件的绝对路径(根据实际情况填写,因为写成了r打开文件,不能是图片格式的,尽量是html格式的) path = '# 确认页面文件的绝对路径' with open(path, 'r') as f: response_body = f.read() # 重新拼接响应体 response = response_line + response_head + '
' + response_body socket_con.send(response.encode()) socket_con.close()def main(): # 服务器创建负责监听的socket socket_listen = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 设置端口重用 socket_listen.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True) # 绑定监听端口 socket_listen.bind(('', 8888)) # 设置监听队列 socket_listen.listen(128) # 通过循环不同的接受请求 while True: # accept() 返回元组 (socket object, address info) socket_con, socket_con_adds = socket_listen.accept() # 打印提示信息 print('客户端:',socket_con_adds,'连接成功!') # 使用函数处理客户端发送的信息 handle_client(socket_con)if __name__ == '__main__': main()
------- 知识无价,汗水有情,如需搬运请注明出处,谢谢!
版权声明
本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。




