在本教程中,我们将使用以下方法在Flask中看到HTTP Get和Post方法 蟒蛇 编程语言。
Http协议是万维网上数据通信的基础。在此协议中定义了从指定URL检索数据的不同方法。
下表回顾了不同的HTTP方法-
序号 | 方法& Description |
1 |
得到 将未加密形式的数据发送到服务器。最常见的方法。 |
2 |
头 与GET相同,但没有响应主体 |
3 |
开机自检 用于将HTML表单数据发送到服务器。服务器不缓存通过POST方法接收的数据。 |
4 |
放 用上载的内容替换目标资源的所有当前表示形式。 |
5 |
删除 删除URL给定的目标资源的所有当前表示形式 |
默认情况下,烧瓶的路由将响应GET请求。无论如何,可以通过提供方法参数来更改此首选项 路线() 装饰。
为了确定在URL路由中使用POST方法,让我们创建一个HTML表单,并使用POST方法将表单数据发送到URL。
login.html
<html>
<body>
<form action = "http://localhost:5000/login" method = "post">
<p>Enter Name:</p>
<p><input type = "text" name = "nm" /></p>
<p><input type = "submit" value = "submit" /></p>
</form>
</body>
</html>
现在,在Python shell中输入以下脚本。
from 烧瓶 import Flask, redirect, url_for, request
app = Flask(__name__)
@app.route('/success/')
def success(name):
return 'welcome %s' % name
@app.route('/login',methods = ['POST', 'GET'])
def 登录():
if request.method == 'POST':
user = request.form['nm']
return redirect(url_for('success',name = user))
else:
user = request.args.get('nm')
return redirect(url_for('success',name = user))
if __name__ == '__main__':
app.run(debug = True)
开发服务器开始运行后,打开 /login.html 在浏览器中,在文本字段中输入名称,然后单击提交。
表单数据被发布到form标记的action子句中的URL。
http:// localhost / login 映射到 登录() 功能。由于服务器已通过POST方法接收数据,因此可以通过以下方式获取从表单数据中获取的“ nm”参数值:
user = request.form['nm']
它被传递给 /成功 URL作为可变部分。浏览器在窗口中显示欢迎消息。
在login.html中将方法参数更改为“ 得到”,然后在浏览器中再次将其打开。服务器上接收的数据是通过GET方法获得的。现在,“ nm”参数的值是通过–
User = request.args.get(‘nm’)
在这里,args是字典对象,其中包含一对表单参数及其对应值的列表。与“ nm”参数相对应的值像以前一样传递到“ / success” URL。
获取更多帖子 蟒蛇