0
点赞
收藏
分享

微信扫一扫

自己动手实现web服务器1.0版本-返回固定页面

HTTP是请求响应模式的通信协议

自己动手实现web服务器1.0版本-返回固定页面_数据

 浏览器请求数据说明import socket
def request_hander(client_socket):
    # 处理客户端请求函数
    recv_data = client_socket.recv(4096)
    # 判断接收函数
    if not recv_data:
        print("客户端断开连接")
        client_socket.colse()
        return
    print(recv_data)#接收到请求报文数据
    # 解码数据
    recv_str_data = recv_data.decode()
    # 响应头   响应行    响应体
    response_line = "HTTP/1.1 200 ok\r\n"#(版本号  状态码
    response_header = "Server: pythonServer1.0\r\n" # 具体问题具体分析 server: pythonserver1.0\r\n
    response_body = "HELLOW WORLD" #响应体 就是浏览器收到的数据
    # 响应报文 ———>字符串拼接
    response_data = response_line + response_header + "\r\n" + "response_body"
    # 发送报文给浏览器
    client_socket.send(response_data.encode())
    # 关闭客户端
    client_socket.close()

if __name__ == '__main__':
    # 创建套接字
    server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 设置地址重用
    server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR,1)
    # 绑定端口 ip
    server_socket.bind(("", 8888))#地址为元组
    # 监听
    server_socket.listen(128)
    # 客户端从服务器取一名
    while  True:
        client_socket, client_address = server_socket.accept()
        print("接受到%s的链接" % str(client_address))
        request_hander(client_socket)#调用函数

举报

相关推荐

0 条评论