Harmel's Blog

往者不可谏,来者犹可追


  • 首页

  • 分类

  • 标签

  • 归档

  • 搜索

Flask:响应

发表于 2018-08-12 | 分类于 Python

视图函数如果返回的是一个字符串,会创建以该字符串数据为响应体,状态码为200,MIME类型为text/html的Response对象(werkzeug.wrappers.Response)。如果返回的是一个响应对象它会直接返回,如通过make_response()构建的响应对象。视图函数还可以返回元组,元组必须至少包含一个元素,该元素即为响应体,完整的元组格式为:(响应体, 状态码, 响应头字典),make_response()的参数与之一致。

阅读全文 »

Flask:会话

发表于 2018-08-11 | 分类于 Python

HTTP是一个无状态的协议,客户端发送一个请求服务端回应一个结果,服务端要从大量请求中区分哪些请求属于同一个客户端发送的,这需要客户端对每次请求进行标识,属于同一个客户端发送的请求都携带相同的标识码,这个标识码被称为会话ID(SessionID),会话ID一般通过Cookie的形式在请求中进行传递,它通常是在第一次请求时产生并随同响应内容一道发送给客户端。

阅读全文 »

Flask:钩子装饰器

发表于 2018-08-08 | 分类于 Python

Flask提供了一些装饰器让我们很容易在请求到来时和请求执行完后做一些处理,装饰器修饰的函数会被Flask注册,当条件满足时它们会被触发,有点类似于AOP中的通知。

  • @app.before_first_request: 当服务器第一个请求到来时调用
  • @app.before_request: 会在每个请求前执行
  • @app.after_request: 会在每个请求后执行,处理函数必须传入参数接收响应对象并返回(允许修改返回对象),抛出异常时不会调用该函数,该函数必须返回响应对象否则页面无响应。
  • @app.teardown_request: 会在每个请求后执行,请求发生异常时也会被调用,处理函数必须传入参数接收异常信息。

注: @app.after_request和@app.teardown_request修饰的函数必须要有一个参数,分别用于接收响应对象和错误信息。

阅读全文 »

Flask:获取请求数据

发表于 2018-08-06 | 分类于 Python

HTTP支持多个请求方法,最常用的有两种:GET 和 POST,GET请求的数据一般通过URL的方式传递给服务器,由于URL的长度有限制所以传递的数据量有限;而POST通过请求消息体把数据传递给服务器,所以理论上来说对数据量大小没有限制。

其他常见请求方法: HEAD(与GET请求方式一样,但是只处理请求头消息)、DELETE(多用于REST中,表示删除一个资源)、PUT(多用于REST中,表示添加一个资源)

消息传递格式:

  • GET:URL?参数名=参数值
  • POST:参数名=参数值

多个参数名值对之间通过 & 进行分隔

阅读全文 »

Flask:URL路由

发表于 2018-08-03 | 分类于 Python

URL路由就是告诉Flask框架当访问某个URL时指定哪个函数去处理,也可以理解为URL和处理函数之间的映射或绑定,这个处理函数一般叫做视图函数,一个视图函数可以绑定多个URL。

添加路由绑定常用的有两种方式:

  • @app.route(“URL规则”)
  • app.add_url_rule(“URL规则”, view_func=处理函数)

注: 查看源代码可以发现,上面的装饰器内部其实是使用下面的方式进行绑定URL的

阅读全文 »

Flask:Hello World

发表于 2018-08-01 | 分类于 Python

Flask是一个基于Python的Web框架,与Django不同的是它没有为开发者做过多的选择而且很容易进行替换,开发者可以选择自己喜欢的方式来构建应用,小巧灵活。

阅读全文 »
1…34
Harmel

Harmel

勿以成败论英雄

24 日志
4 分类
22 标签
友情链接
  • 开源中国
  • 汉服之家
© 2018 - 2020 Harmel | 总字数: 21.8k
由 阿里云 强力驱动
|
鄂ICP备18020194号-1