Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 运行一个小HTTP服务器来检查回调_Python_Http_Python Requests - Fatal编程技术网

Python 运行一个小HTTP服务器来检查回调

Python 运行一个小HTTP服务器来检查回调,python,http,python-requests,Python,Http,Python Requests,我想运行一个脚本,创建一个简单的HTTP服务器,并为每个请求运行一个函数 我正在使用Python测试一个API,它应该会给我一个回调。 目前,我正在使用测试回调,但我想在python脚本中直接测试它 是否可以在localhost:6548上运行回调服务器绑定并根据请求进行测试 谢谢您的帮助。您可以使用它来托管一个简单的WSGI web应用程序。例如: from wsgiref.simple_server import make_server import datetime def applic

我想运行一个脚本,创建一个简单的HTTP服务器,并为每个请求运行一个函数

我正在使用Python测试一个API,它应该会给我一个回调。 目前,我正在使用测试回调,但我想在python脚本中直接测试它

是否可以在localhost:6548上运行回调服务器绑定并根据请求进行测试

谢谢您的帮助。

您可以使用它来托管一个简单的WSGI web应用程序。例如:

from wsgiref.simple_server import make_server
import datetime

def application(environ, start_response):
    start_response('200 OK', [('Content-type', 'text/plain')])
    retval = [
            str(environ),
            "\n",
            "Hello world!\n",
            str(datetime.datetime.now())
            ]
    return retval

make_server('localhost', 6548, application).serve_forever()
这段代码创建了一个Python web应用程序,并在
http://localhost:6548

您可以使用微框架。下面是一个简单的例子:

from flask import Flask, request

app = Flask(__name__)

@app.route('/firs_call', methods=['POST'])
def first_callback():
    if request.method == 'POST':
        result = request.data
        client_ip = request.remote_addr

    return "OK"


@app.route('/second_call', methods=['GET'])
def second_callback():
    if request.method == 'GET':
         #....
         pass

    return "OK"

if __name__ == '__main__':
    app.debug = True
    app.run("127.0.0.1")

您可以通过
http://127.0.0.1:5000/

是否
使服务器
阻止脚本?有没有办法在线程中运行它?
永远服务()
是一个阻塞调用。是的,您可以在线程中运行它,使用线程模块: