访问请求数据
1.环境局部变量
2.请求对象
3.文件上传
4.cookies
1.环境局部变量:
类似单元测试方式,依赖于一段请求的代码,没有请求对象无法正常进行
解决:自行创建一个请求对象,绑定到环境中
具体:使用test_request_context()环境管理器,结合with声明,绑定一个测试请求
python笔记
#!/usr/bin/python
#--coding:utf-8--
格式化输出:
print(‘结果为 {0} 和 {1}’.format(sol1,sol2))
flask流程
#导入flask类
#创建类的实例//第一个参数是应用模块|包的名称//这样flask才知道去哪找模板、静态文件(#注意是两个横线)
#1.route告诉flask哪个url触发函数/把函数绑定到url
#2.唯一url:第一种:url尾端带斜线/访问不带|自动到规范。第二种:不带|访问带|notfound
#函数返回我们想要显示在浏览器的信息
#含参数的 /转换器int float path
#1.run函数让应用运行在本地服务器
#2.确保服务器只会在该脚本被python解释器执行的时候才会运行,而不是作为模块导入时
#3.调试模式 app.debug = True
#外部可访问的服务器
#app.run(host=‘0.0.0.0’)//结果无法访问此网站?
构造url
#根据函数名反向生成url,
#url_for() 来针对一个特定的函数构建一个 URL。
#函数名——第一参数+关键字参数, 关键字参数对应于 URL 规则的变量部分
#未知变量部分被插入到 URL 中作为查询参数。
#有疑问。。。。。。。。
函数名作为第一参数+(url规则的变量命名参数)
构建url好处:
1.反向构建比硬编码描述性要好,一次性修改url
2.url构建会转义特殊字符和unicode数据,
3.如果应用不在url根路径,(/application),也能处理
激活一个临时的请求上下文
(上下文就是进程执行时的环境,即变量和数据,环境的一个快照)
#可以访问request,session对象//应用上下文(Application Context)+请求上下文(Request Context)
#request: 每次http请求发生时
#application: 用于响应WSGI请求的应用本身 with app.app_context(): print current_app.name
#4中hook: @before_first_request /@before_request /@after_request /@teardown_request
#注意格式print() //#print是在命令行输出
http方法
#默认:路由回应get请求。通过route()装饰器传递methods参数改变行为
反向路由
#通过index()解析出对应的访问路径
模板
#静态文件:css/js
#在包中或者模块所在目录创建一个static文件夹。用/static访问
#url_for(‘static’,filename=‘style.css’)
Unicode(统一码、万国码、单一码)
定义:是计算机科学领域里的一项业界标准,包括字符集、编码方案等。
目的:Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。 [1]