Flask Client无法撤消回应

时间:2019-03-17 06:31:20

标签: python flask

我正在尝试使用request.post通过客户端从服务器检索数据 任务ID id随机ID

这是服务器

from json import dumps
from werkzeug.exceptions import BadRequest
from flask import (
        Flask,
        Response,
        request
    )


from utils import get_random_id


    app = Flask(__name__)

    tasks = {
        get_random_id(): {
            "task": "write server mock",
            "completed": True
        }
        #print(get_random_id())
    }

    @app.route(
        '/tasks',
        methods=['GET']
    )
    def list_tasks():
        li = [
            {
                "id": task_id,
                "task": values["task"],
                "completed": values["completed"]
            } for task_id, values in tasks.iteritems()
        ]
        #print(li)
        return Response(
            dumps(li),
            mimetype='application/json'
        )

if __name__ == "__main__":
    pass

这里是客户:

from flask import Flask,request
#importing server file that i made
import server

app = Flask(__name__)
app.testing = True


@app.route('/')
def index():
    return request.url


response = app.test_client(server)

print(response)

我要检索我的python文件中所有我要生成的帖子是客户端的响应

我如何获得桌子? 我是否使用API​​端点?

请帮助我解决此错误

2 个答案:

答案 0 :(得分:0)

您需要使用一些HTTP库来发出请求。 尝试http://docs.python-requests.org/en/master/

示例:

import requests
r = requests.get('{your server url}/tasks')

答案 1 :(得分:0)

test_client方法将为您创建一个客户端。然后,您应该使用该客户端来查询服务器(POST或GET或其他方式)。因此,您可以使用类似以下的内容:

with server.test_client() as c:
    resp = c.get('/tasks')
    data = json.loads(resp.data)
    print(data)