cod*_*un3 2 python post get http flask
我是Flask和Web开发的新手,我正在尝试创建一个简单的应用程序,在服务器上生成一个整数数组并发送给客户端.以下是app.py中的一些示例(工作)代码:
from flask import Flask, render_template, request, url_for
import random
app = Flask(__name__)
@app.route('/')
def form():
s_abc = [random.random() for _ in range(40)]
return render_template('abc.html', s_abc=s_abc)
if __name__ == '__main__':
app.run(debug=True)
Run Code Online (Sandbox Code Playgroud)
这是一个(工作)abc.html片段:
<div>
{{s_abc}}
</div>
Run Code Online (Sandbox Code Playgroud)
我的问题是:
即使没有GET/POST HTTP方法,这如何工作?我认为服务器和客户端之间的通信需要获取/发布http方法(如下所述:http://www.tutorialspoint.com/http/http_methods.htm).但是,即使我没有写这样的东西,我的代码也能正常工作:
@app.route('/', methods=['GET'])
Run Code Online (Sandbox Code Playgroud)有没有办法重写这个,以便它使用POST?显然,POST更适合处理敏感数据,如下所述:http://blog.teamtreehouse.com/the-definitive-guide-to-get-vs-post
谢谢.
烧瓶的默认值是GET.你可以用它methods来改变:
@app.route('/', methods=['GET', 'POST'])
Run Code Online (Sandbox Code Playgroud)
阅读文档:Flask 1.0.2文档
Web应用程序在访问URL时使用不同的HTTP方法.在使用Flask时,您应该熟悉HTTP方法.默认情况下,路由仅响应GET请求.您可以使用route()装饰器的methods参数来处理不同的HTTP方法.
默认值为GET. POST仅当abc.html具有表单并且用户提交 的值时才适用s_abc。在您的情况下,您正在生成它并呈现 html。
如果您不熟悉 Flask,您应该查看这个完整的教程。它将向您展示如何创建表单和接收数据:
http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world
http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-iii-web-forms
| 归档时间: |
|
| 查看次数: |
20329 次 |
| 最近记录: |