美文网首页
实现简单的http服务器

实现简单的http服务器

作者: BJ000 | 来源:发表于2019-11-19 08:47 被阅读0次

    import socket

    def service_client(new_socket):

      """用来完成整体的控制"""

      #1、接收浏览器发送过来的请求,即http请求

      #GET / HTTP/1.1

    #.....

      request= new_socket.recv(1024)

    print (request)

    #2、返回http格式的数据给浏览器

      #2.1 准备发送给浏览器的数据:header

      response= "HTTP/1.1 200 OK\r\n" #\r\n兼容Windows浏览器的换行

      response+= "\r\n"

      #2.2准备发送给浏览器的数据:Body

      response+= "

    hahaha

    "

      # f = open("文件地址/index.html", 'rb')  rb二进制

      # html_content = f.read()

    # f.close()

      #将

      new_socket.send(response.encode("utf-8"))

    # 关闭套接字

      new_socket.close()

    def main():

      """用来完成整体的控制"""

      # 1、创建套接字

      tcp_server_socket= socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    # 2、绑定

      tcp_server_socket.bind(("",2002))#1234端口,不能重复

      # 3、变为监听套接字

      tcp_server_socket.listen(128)#最大128人同时链接

      while True:

        # 4、等待新客户去哪的链接

        new_socket, client_addr= tcp_server_socket.accept()

    # 5、为这个客户端服务

        service_client(new_socket)

    #6、关闭监听套接字

      tcp_server_socket.close()

    if __name__== '__main__':

      main()

    相关文章

      网友评论

          本文标题:实现简单的http服务器

          本文链接:https://www.haomeiwen.com/subject/dqaiictx.html