利用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数据通过返回的套接字进行处理