当前位置: 首页 > 面试题库 >

如何在Flask中获取表单数据?

王棋
2023-03-14
问题内容

我需要从表单获取数据。

我使用JavaScript创建表单:

<script>   
function checkAuth() {
                var user = ADAL.getCachedUser();
                if (user) {
                    var form = $('<form style="position: absolute; width: 0; height: 0; opacity: 0; display: none; visibility: hidden;" method="POST" action= "{{ url_for("general.microsoft") }}">');

                    form.append('<input type="hidden" name="token" value="' + ADAL.getCachedToken(ADAL.config.clientId) + '">');
                    form.append('<input type="hidden" name="json" value="' + encodeURIComponent(JSON.stringify(user)) + '">');
                    $("body").append(form);
                    form.submit();
                }
            }
</script> 

那么我需要从输入字段中获取数据name="json"

这是我的视图函数:

@general.route("/microsoft/", methods=["GET", "POST"])
@csrf.exempt
def microsoft():
    form = cgi.FieldStorage()
    name = form['json'].value
    return name

但我得到一个错误:

builtins.KeyError KeyError: 'json'

帮我从表格中获取数据。


问题答案:

从Flask的请求对象获取表单数据

from flask import Flask, request
app = Flask(__name__)

@app.route('/', methods=['GET', 'POST'])
def index():
    data = request.form['input_name']
    ...

你还可以设置默认值以避免400错误,如下所示:

from flask import Flask, request
app = Flask(__name__)

@app.route('/', methods=['GET', 'POST'])
def index():
    default_name = '0'
    data = request.form.get('input_name', default_name)
    ...


 类似资料:
  • 问题内容: 我正在尝试使用Flask构建一个简单的API,现在我想在其中读取一些POSTed JSON。我使用Postman Chrome扩展程序进行POST,而我发布的JSON就是。我尝试使用以下方法读取JSON: 在浏览器上,它可以正确返回我放入GET中的UUID,但是在控制台上,它只是打印出来(我希望它可以在其中打印出来。有人知道我如何从Flask方法中获取发布的JSON吗? 问题答案: 首

  • 问题内容: 我正在尝试从烧瓶视图获取url参数: 如何从视图中获取? 问题答案: 你可以使用以下方法检索查询字符串变量 要么 你要接收的查询字符串中的变量在哪里。

  • 我需要从表单中获取数据。 我使用JavaScript创建表单: 然后我需要从输入字段获取数据,其中。 这里是我的视图功能: 但是我得到一个错误: 帮助我从表单中获取数据。

  • 问题内容: 我的函数中有一个简单的表单,如下所示: 我应该在访问和字段中写些什么? 问题答案: 使用输入上的事件来更新组件的状态并在以下位置访问它: 工作提琴。 另外,阅读文档,有一整节专门讨论表单处理:表单 以前,您还可以使用React的双向数据绑定帮助器mixin来实现相同的功能,但是现在不建议使用它来设置值和更改处理程序(如上所述): 文档在这里:双向绑定帮助器。

  • 问题内容: 我正在尝试使用Flask构建一个简单的API,现在我想在其中读取一些。我使用扩展程序进行,而我发布的就是。我尝试使用以下方法读取JSON: 在浏览器上,它可以正确返回我放入GET中的UUID,但是在控制台上,它只是打印出来(我希望它可以在其中打印出来。有人知道我如何从方法中获取发布的吗? 问题答案: 首先,该.json属性是一个委托给的属性,该属性记录了您None在此处看到的原因。 您

  • 问题内容: 我是python的新手,使用Python Flask并生成REST API服务。 我想检查发送给客户端的授权标头。 但是我找不到在flask中获取HTTP标头的方法。 感谢获得HTTP标头授权的任何帮助。 问题答案: 行为就像字典一样,因此你也可以像使用任何字典一样获取标头: