我如何接受来自后端 Python 服务器脚本的 HTTP 请求和 return 整数?

How do I accept a HTTP request and return an integer from a backend Python server script?

我用过Python,但没有在后端服务器场景中使用。我想创建一个 Python 后端,当用 URL 调用时将 运行 一个简单的 Python 脚本,它将 return 返回一个整数。

到目前为止,我已经能够通过

设置 HTTP 服务器
python -m SimpleHTTPServer

如您所见,我还有很长的路要走。我已经阅读了一些有关 CGI 的内容,但无法掌握它。

如果你能帮我设计简单的后端 .py 文件和相应的 URL,我将不胜感激,比如:

http://localhost:8000/my_prog.py

在客户端,当我调用此 URL 时,我需要在响应中获取一个整数值。

我会把它推进到实际 return 一个 JSON 响应,但首先我需要知道如何 return 一个简单的 int。

非常感谢!

from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer

NUMBER = 5


class Handler(BaseHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200)
        self.end_headers()
        self.wfile.write(str(NUMBER))


httpd = HTTPServer(('localhost', 5001), Handler)
httpd.serve_forever()

您可以通过调用 python server.py 来 运行 它会 return 文本中的数字:

$ http GET :5001
  HTTP/1.0 200 OK
  Date: Mon, 12 Jun 2017 11:07:11 GMT
  Server: BaseHTTP/0.3 Python/2.7.12

  5

但是,如果您打算开发更大的应用程序并且可以通过 pip 包含第三方模块,我还建议使用 Flask 或其他小型 http 服务器库。