当前位置: 首页 > 知识库问答 >
问题:

如何在烧瓶中获取表单数据?[副本]

巫马玉堂
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'

帮助我从表单中获取数据。

共有1个答案

澹台建华
2023-03-14

您可以使用form属性从Flask的请求对象获取表单数据:

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

@app.route('/', methods=['GET', 'POST'])
def index():
    data = request.form['input_name']  # pass the form field name as key
    ...
    

您还可以使用get()方法设置默认值以避免400个错误,因为request.form属性是类似dict的对象:

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

@app.route('/', methods=['GET', 'POST'])
def index():
    default_value = '0'
    data = request.form.get('input_name', default_value)
    ...
    
 类似资料:
  • 我想要能够得到数据发送到我的烧瓶应用程序。我尝试访问,但它是一个空字符串。如何访问请求数据? 这个问题的答案导致我在Python Flask中询问Get raw POST body next Content-Type header,这是关于获取原始数据而不是解析数据的。

  • 我正试图将数据放入flask中的表中,但由于某种原因,它为每个字符创建了一个新行,而不是仅仅将完整的字符串放入行中。 代码: 表代码:

  • 我无法读取通过XMLHttpRequest发布的烧瓶中的数据。我正在使用这个jquery插件裁剪图像并上传到服务器 https://codecanyon.net/item/slim-image-cropper-responsive-uploading-and-ratio-cropping-plugin/16364167 数据-有关图像的信息在json中收集和隐藏,然后使用XMLHttpReques

  • 问题内容: 我需要从表单获取数据。 我使用JavaScript创建表单: 那么我需要从输入字段中获取数据。 这是我的视图函数: 但我得到一个错误: 帮我从表格中获取数据。 问题答案: 从Flask的请求对象获取表单数据: 你还可以设置默认值以避免400错误,如下所示:

  • 问题内容: 这听起来可能是个菜鸟问题,但由于Python不是我最好的语言之一,所以我坚持使用它。 我有一个html页面,里面有一个表格,我想在其中显示一个pandas数据框。最好的方法是什么?使用pandasdataframe.to_html? py html 问题答案: 工作示例: python代码: HTML: 否则使用 并从html中删除行 如果您检查html上的元素 如您所见,表格html