我正在尝试实现一个简单的仪表板Flask
,它将:
接受用户文本输入,带有“提交”按钮。将此用户输入发布到烧瓶。
Flask 接受这个输入,对它做一些事情,然后向另一个 API 发出 GET 请求。
这个 GET 请求返回数据并以某种方式显示(可能只是console.log
现在)
例如,使用星球大战 API:
用户输入星球大战角色的名称(假设没有拼写错误)
Flask 读取这个输入名称,并将其映射到一个 ID 号,因为Star Wars API接受 ID 号。向 Star Wars API 发送 GET 请求,以获取完整的角色信息。
现在,我们可以只输入console.log
字符信息(例如“身高”、“质量”等)
我现在拥有的:
app.py
from flask import Flask, jsonify, request, render_template
import random
import json
app = Flask(__name__)
@app.route("/")
def index():
return render_template('index.html')
@app.route("/form_example", methods=["GET", "POST"])
def form_example():
if request.method == "POST":
language = request.form("character_name")
starwars_dictionary = {"Luke Skywalker":"1", "C-3PO":"2", "R2-D2": "3"}
# starwars_dictionary is a dictionary with character_name:character_number key-value pairs.
# GET URL is of the form https://swapi.co/api/people/<character_number>
return render_template("index.html")
if __name__ == "__main__":
app.run(debug=True)
索引.html
<!DOCTYPE html>
<html>
<head>
<title>py-to-JS</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
</head>
<body>
<h3>Sample Inputs</h3>
<ul>
<li>Luke Skywalker</li>
<li>C-3PO</li>
<li>R2-D2</li>
</ul>
<form method="POST">
Enter Name: <input type="text" name="character_name"><br>
<input type="submit" value="Submit"><br>
</form>
</body>
</html>
在这种当前形式中,当我运行应用程序时,它返回“方法不允许;请求的 URL 不允许此方法”。
我不确定我错过了什么;它可能只是没有正确连接在一起,但我不确定正确的语法是什么。
UYOU
相关分类