如何在Flask中处理意外的url参数

问题描述 投票:0回答:1

我是Flask和Web开发的新手。我对网址参数有疑问。

例如,我有一个端点'/ categories',它不希望有url参数。我尝试在curl中添加一些随机url参数,例如“ curl localhost:5000 / categories?page = 1”。它的工作方式与正常类似,我想知道这是否是预期的行为,还是应该通过一些错误或警告来处理?

[此外,如果我期望一个名为'id'的url参数,并且该请求不包含任何url参数或错误的url参数。我应该如何处理这种情况?

谢谢您的帮助。

python web url flask backend
1个回答
0
投票

您将需要检查查询字符串(URL中?后面的值),以查看参数是否存在并且该值有效。有一些库可以使用装饰器来执行此操作,但是您也可以手动执行此操作。您将需要在模块顶部导入请求对象。

from flask import request

@app.route('/categories')
def categories():
    id = request.args.get('id') # will return None if key does not exist
    if id:
        # id exists, validate value here
        pass
    else:
        # no id, return error or something
        pass

相关问题:How do you get a query string on Flask?

© www.soinside.com 2019 - 2024. All rights reserved.