*get:浏览器告诉服务器,我只需要获取页面信息给我,这是最简单最常用的方法

*Post:览器告诉服务器:想在 URL 上 发布 新信息。并且,服务器必须确保 数据已存储且仅存储一次。这是 HTML 表单通常发送数据到服务器的方法。

*route:路由,通过route() 装饰器把一个函数绑定到对应的 URL 上。【默认路由是只回应GET请求,但是可以通过Method来改变这个行为】

1、使用GET方法(通常是默认GET或指定GET)

 from flask import Flask
app = Flask(__name__) @app.route('/project')--------->默认GET,注意,这里URL结尾没有以斜杠结尾,访问时,如果不小心访问成【http://127.0.0.1:5000/project/】,会提示404NOT FOUNT,也就是说必须以没有斜杠的标准URL访问
def hello_world():
return '这是project页面!' @app.route('/hello/',methods=['get'])-------->指定GET,两种方式都行,注意,这里URL以斜杠结尾,和上一种的区别在于,不管访问最后有没有带斜杠,最终都会被Flask重定向到带斜线的规范URL去
 def hello(): 
return '这是HELLLO页面,Hello World!!!!!!!!!!'
11
if __name__ == '__main__': app.run(debug=True);

2、使用POST方法

@app.route('/register',methods=['POST'])   ----->该URL使用POST方法
def register():
print(request.headers);
print(request.stream);#视图函数
return '欢饮' if __name__ == '__main__':
app.run(debug=True);

3、动态构造URL

*下面的例子中,规则可以由方法中写出,只要把需要构造的动态参数以<valuename>的形式写入URL中即可

@app.route('/hello/<username>',methods=['get'])
def hello2(username):
return username

*可输入中文、整数、浮点数进行验证,都是正常的

*但是输入特殊字符,如【/】,会背看成是路径符号,而提示NOT FOUNT,怎么破?

*输入特殊字符,如【%40】,会被浏览器转义,怎么破

附--录:

字符    -    URL编码值

空格    -    %20
"          -    %22
#         -    %23
%        -    %25
&         -    %26
(          -    %28
)          -    %29
+         -    %2B
,          -    %2C
/          -    %2F
:          -    %3A
;          -    %3B
<         -    %3C
=         -    %3D
>         -    %3E
?         -    %3F
@       -    %40
\          -    %5C
|          -    %7C 

Flask---第二个例子--Get和POST发送的更多相关文章

  1. 3、netty第二个例子,使用netty建立客户端,与服务端通讯

    第一个例子中,建立了http的服务器端,可以直接使用curl命令,或者浏览器直接访问. 在第二个例子中,建立一个netty的客户端来主动发送请求,模拟浏览器发送请求. 这里先启动服务端,再启动客户端, ...

  2. flask第二十九篇——一个例子+【更新内容通知】

    请关注公众号:自动化测试实战 大家先自己写一下,船长写这个花了半个小时,因为我和大家一样,也是新手: 写一个页面如下,点击书名以后跳转到书的详情页 书的信息如下: books = [ { 'id': ...

  3. flask第二十五篇——控制语句

    有兴趣的请加船长公众号:自动化测试实战 先和大家强调一个发邮件的问题 # coding: utf-8 import smtplib from email.mime.text import MIMETe ...

  4. flask 第二章 endpoint重名 Flask路由 初始化配置 Falsk Config 蓝图+目录结构

    今日内容 1.路由的分发,以下两种方式效果一样,但是都能指向同一个函数 from flask import Flask app=Flask(__name__) #第一种方式 @app.route('/ ...

  5. Flask最强攻略 - 跟DragonFire学Flask - 第二篇 Flask 中的 Render Redirect HttpResponse

    1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串 2.Flask中的Redirect 每当访问"/redi" ...

  6. flask第二十二篇——模板【4】过滤器

    请关注微信公众号:自动化测试实战 先来教大家一个pycharm设置默认模板的方法.我们每次新建模板或者平时写代码打开以后可能都要重复写# coding: utf-8这些代码,其实我们可以设置好模板,让 ...

  7. Flask第二篇——服务器相关

    web服务器.应用服务器和web应用框架 web服务器:负责处理http请求.响应静态文件,常见的有Apache,Nginx以及微软的IIS 应用服务器:负责处理逻辑的服务器.比如php.python ...

  8. Flask—04-文件上传与邮件发送(自带优化)

    文件上传与邮件发送 可以按照标题分别直接粘贴对应的文件夹,运行直接用: 原生上传 模板文件 <form method="post" enctype="multipa ...

  9. SpringBoot | 第二十六章:邮件发送

    前言 讲解了日志相关的知识点后.今天来点相对简单的,一般上,我们在开发一些注册功能.发送验证码或者订单服务时,都会通过短信或者邮件的方式通知消费者,注册或者订单的相关信息.而且基本上邮件的内容都是模版 ...

随机推荐

  1. OpenVPN安装过程记录

    1.参考网上OpenVPN 的安装步骤进行安装,此处省略. 2.安装完后进行相应证书和密钥的生成. 3.启动openvpn,查看 netstat -tunlp ,如果有openvpn 1194的监听, ...

  2. Git操作----删除untracked files

    # 删除 untracked files git clean -f # 连 untracked 的目录也一起删掉 git clean -fd # 连 gitignore 的untrack 文件/目录也 ...

  3. appium常用方法

    1.输入中文 在capabilities中增加两项设置: capabilities.setCapability("unicodeKeyboard", "True" ...

  4. Day8--------------RPM包管理

    nginx.tar.gz:源码,编译安装 RPM:redhat package manage,二进制 增.删.查 1.增 package------>ls|less------------> ...

  5. Python-数据库 基本SQL语句

    1. 数据库是什么 2. MySQL安装 3. 用户授权 4. 数据库操作 - 数据表 - 数据类型 - 是否可以为空 - 自增 - 主键 - 外键 - 唯一索引 数据行 增 删 改 查 排序: or ...

  6. Android Apk 瘦身大法

    原文地址: https://mp.weixin.qq.com/s/XS0tuLgTfyp4rW4h69wyQQ 一, 我们在多人开发项目 或者 遗留项目中开发时,会有些自己没用到的资源文件,但是自己也 ...

  7. CM5.15安装kafka

    cm主节点执行: [root@dip001 kafka]#ll KAFKA-.jar KAFKA---el7.parcel KAFKA---el7.parcel.sha1 manifest.json ...

  8. python 启动虚拟环境

    假设你有两个Python项目-A和B,这两个项目都需要使用同一个第三方模块-tensorflow.如果这两个项目使用相同的tensorflow版本,也许不会有什么问题. 但是,当A和B项目使用不同的t ...

  9. nginx 配置白名单

    在http 模块 增加 geo $remote_addr $ip_whitelist{ default 0; include white_ip.conf; } 在location 模块 增加 (注意i ...

  10. PHP array_combine()

    // 需要替换 key 的数组 $arr_old = array( '0' => array('id' => 1, 'name' => 'Carroll'), '1' => a ...