利用Python编写简单的Web静态服务器(TCP协议)

Posted cokefentas

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用Python编写简单的Web静态服务器(TCP协议)相关的知识,希望对你有一定的参考价值。

import socket

def service_client(new_socket):
    #接受客户端的需求
    request = new_socket.recv(1024)
    print(request)
    #回传数据给客户端
    response = HTTP/1.1 200 OK\r\n
    response += \r\n
    response += <h1>你好</h1>
    new_socket.send(response.encode(utf-8))

def main():
    #创建套接字
    serve_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    #绑定ip和端口
    serve_socket.bind((‘‘,7080))
    #listen客户端需求
    serve_socket.listen(128)
    #等待客户端链接accept
    new_socket,client_addr = serve_socket.accept()
    print(new_socket)
    print(client_addr)
    #服务客户端recv和send
    service_client(new_socket)


if __name__ == __main__:
    main()

基本思路与tcp服务器的创建方法一样

用socket创建套接字→用bind绑定地址(ip和port)→listen监听客户端的请求→accept等待客户端的链接→服务客户端(主要是recv需求send数据)

其中serve_socket.accept()返回的数据为一个套接字和客户端地址(ip和port),recv需求send数据通过返回的套接字进行处理

 

以上是关于利用Python编写简单的Web静态服务器(TCP协议)的主要内容,如果未能解决你的问题,请参考以下文章

python 启动简单web服务器

Python之HTTP静态服务器-面向对象版开发

基础入门_Python-模块和包.为wsgiref实现的WSGI服务器编写处理函数?

Python之HTTP静态Web服务器开发

HTTP服务器

[python网络编程]利用socket编写简单的服务器