在Http Request

时间:2017-06-22 08:12:43

标签: python http server

当我收到http请求并且必须发送响应时,我必须在我的计算机上运行Python脚本。我该怎么做?我认为我的电脑应该作为服务器运行,但我不知道如何。你能救我吗?

2 个答案:

答案 0 :(得分:0)

您需要一台Web服务器才能实现此目的。 here您可以了解Web服务器是什么以及如何创建简单的Web服务器。 来自提供的链接的以下脚本是最简单的代码,可以满足您的期望,您可以将脚本放在while循环中:

import socket

HOST, PORT = '', 8888

listen_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
listen_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
listen_socket.bind((HOST, PORT))
listen_socket.listen(1)
print 'Serving HTTP on port %s ...' % PORT
while True:
    client_connection, client_address = listen_socket.accept()
    request = client_connection.recv(1024)
    print request

    http_response = """\
HTTP/1.1 200 OK
Hello, World!
"""
    client_connection.sendall(http_response)
    client_connection.close()

如果你想更专业地做事,你也可以使用像django这样复杂的框架。

答案 1 :(得分:0)

或者你可以使用烧瓶,这会更简单。

首先,您需要安装flask及其依赖项:

pip install flask

然后你可以这样做:

from import Flask
app = Flask(__name__)

@app.route('/', methods = ['GET'])
def index():
    return "hello world"

if __name__ == '__main__':
    app.run(port = 5000)

现在,您可以在浏览器中访问localhost:5000并查看响应。

您可以改为返回JSON响应,具体取决于您的要求。如果这是您需要的,Flask还可以呈现HTML模板。