📜  用Python从头开始构建一个基本的 HTTP 服务器

📅  最后修改于: 2022-05-13 01:55:25.628000             🧑  作者: Mango

用Python从头开始构建一个基本的 HTTP 服务器

在本文中,我们将学习如何使用Python设置一个简单的本地 HTTP 服务器。 HTTP 服务器对于在开发过程中在本地测试 Android、PC 或 Web 应用程序非常有用。它还可用于在通过同一 LAN 或 WLAN 网络连接的两个设备之间共享文件。

安装:

在终端上运行以下语句:

python -m http.server

为了在本地访问服务器,我们需要访问 http://localhost:8000/ 或 http://127.0.0.1:8000/ 在这里我们可以看到本地存储的所有目录以及所有数据。您还可以访问 HTML 页面,它会在您访问时由您的 Web 浏览器呈现。



使用的功能:

  • BaseHTTPRequestHandler:用于处理到达服务器的请求。它不处理实际的 HTTP 请求,而是处理 Get 和 Post 请求。
  • HTTPServer(server_address,BASE_HTTP_REQUEST_HANDLER()):这是一个用于存储服务器端口以及服务器名称的函数。

循序渐进的方法:

  • 我们将创建一个处理服务器请求的类。
  • 在那个类中,我们将创建一个用于 GET_REQUESTS 的函数。
  • 在该函数,我们将编写 HTML 代码以在服务器上显示它。
  • 最后,我们使用的是用于运行服务器的 HTTPServer()函数。

执行:

Python3
# importing all the functions 
# from http.server module
from http.server import *
  
# creating a class for handling 
# basic Get and Post Requests
class GFG(BaseHTTPRequestHandler):
    
    # creating a function for Get Request
    def do_GET(self):
        
        # Success Response --> 200
        self.send_response(200)
          
        # Type of file that we are using for creating our
        # web server.
        self.send_header('content-type', 'text/html')
        self.end_headers()
          
        # what we write in this function it gets visible on our
        # web-server
        self.wfile.write('

GFG - (GeeksForGeeks)

'.encode())       # this is the object which take port  # number and the server-name # for running the server port = HTTPServer(('', 5555), GFG)    # this is used for running our  # server as long as we wish # i.e. forever port.serve_forever()


如何启动我们的 HTTP 服务器:

在终端中使用以下命令

python file_name.py

在浏览器中访问http://localhost:5555/或 http://127.0.0.1:5555/