带json的pythonFlask

2024-07-08 03:18:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图获取用户的输入并以json的形式返回详细信息。 但我发现了一个错误,我找不到原因。 她的是我的python代码:

from flask import Flask, request, render_template,jsonify
import json
@app.route('/user_input')
def user_input():
    return render_template('user-input.html')


@app.route('/user_input',methods = ['POST'])
def result():
    NAME = request.form['Book_Name']
    PAGE = request.form['Page']
    TEXT = request.form['Text']
    TOPIC = request.form['Topic']
    pythonDictionary = {'bookName': NAME, 'page': PAGE, 'text': TEXT, 'topic': TOPIC}
    dictionaryToJson = json.dumps(pythonDictionary)
    return jsonify(dictionaryToJson)

以及我的HTML文件:

^{2}$

如何正确返回值?在


Tags: nameimportformjsonappinputreturnrequest
2条回答

您将转储dict两次,因为jsonify也会转储{}(它还会为您设置正确的响应头,这就是为什么您应该使用它而不是{}:

dictionaryToJson = json.dumps(pythonDictionary)
return jsonify(dictionaryToJson)

这样做:

^{pr2}$

0)变量不要使用大写。常量总是大写。在

1)使用末尾带有“/”的路由,以避免额外的重定向

@app.route('/user_input/', methods = ['POST'])

2)使用相同的路线相同的功能来获得您需要的:

^{pr2}$

3)是的,在将字典传递给jsonify之前,不需要使用json.dumps(pythonDictionary)

4)考虑使用request.form.get('key')而不是request.form['key'],因为get()函数returns没有key:取而代之的是value引发密钥错误异常。在

相关问题 更多 >

    热门问题