SAE Python 后台1
2016-07-10 12:41
155 查看
HTTP请求方法通常也十分合适去描述操作资源的动作:
REST请求并不需要特定的数据格式,通常使用JSON作为请求体,或者URL的查询参数的一部份。
迭代1:
(1)后台
(2)客户端
(3)结果
迭代2:
(1)后台
(2)客户端
(3)结果
迭代3:
(1)后台
(2)客户端
(3)结果
插曲:request.json是一个坑。
Flask的request和response对象(一些是元数据,一些是解析后的数据,一些是链接)
(1) Request
a. 返回request.json
(服务器)
(客户端)
(结果)
b. 本质是字符串类型(str)
c.非json类型
d.正确访问json
e.request.body是一个带反斜杠的字符串数组。
f.是时候看看其他的部分了
(2)Response(暂无实例,TODO)
使用eval(request.json)是一种补坑方法,但request.json又弄出一个坑。如下:
客户端:d1 = {"title":"Read a book", "description":"Read a helpful book","done":False}
jd = json.dumps(d1)
r = requests.put(url,json = jd)
服务器端:request.json自作聪明地把False转换为小写了,即:(导致eval(request.json)失效。)
request.json = ''' {"title":"Read a book", "description":"Read a helpful book","done":false} '''
补坑方法:
(服务器)
(客户端)
(结果)
原理:
NOTES:避免方法,不用bool值。比如用1表示True,0表示False。
迭代4:
(1)后台
(2)客户端
(3)结果
迭代5:
(1)后台
(2)客户端
(3)结果
HTTP方法 | 动作 | 例子 |
GET | 获取资源信息 | http://example.com/api/orders (检索订单清单) |
GET | 获取资源信息 | http://example.com/api/orders/123 (检索订单 #123) |
POST | 创建一个次的资源 | http://example.com/api/orders (使用带数据的请求,创建一个新的订单) |
PUT | 更新一个资源 | http://example.com/api/orders/123 (使用带数据的请求,更新#123订单) |
DELETE | 删除一个资源 | http://example.com/api/orders/123 删除订单#123 |
迭代1:
(1)后台
(2)客户端
(3)结果
迭代2:
(1)后台
(2)客户端
(3)结果
迭代3:
(1)后台
(2)客户端
(3)结果
插曲:request.json是一个坑。
Flask的request和response对象(一些是元数据,一些是解析后的数据,一些是链接)
(1) Request
method起始行,元数据
host起始行,元数据
path起始行,元数据
environ其中的
SERVER_PROTOCOL是起始行,元数据
headers头,元数据
databody, 元数据
remote_addr客户端地址
args请求链接中的参数(GET 参数),解析后
formform 提交中的参数,解析后
valuesargs 和 forms 的集合
jsonjson 格式的 body 数据,解析后
cookies指向 Cookie 的链接
a. 返回request.json
(服务器)
(客户端)
(结果)
b. 本质是字符串类型(str)
c.非json类型
d.正确访问json
e.request.body是一个带反斜杠的字符串数组。
f.是时候看看其他的部分了
(2)Response(暂无实例,TODO)
status状态码,元数据
status_code只包含 code 的 status
headers头,元数据
mimetype去掉 charset 的 content type,如
application/json
databody,元数据
使用eval(request.json)是一种补坑方法,但request.json又弄出一个坑。如下:
客户端:d1 = {"title":"Read a book", "description":"Read a helpful book","done":False}
jd = json.dumps(d1)
r = requests.put(url,json = jd)
服务器端:request.json自作聪明地把False转换为小写了,即:(导致eval(request.json)失效。)
request.json = ''' {"title":"Read a book", "description":"Read a helpful book","done":false} '''
补坑方法:
(服务器)
(客户端)
(结果)
原理:
NOTES:避免方法,不用bool值。比如用1表示True,0表示False。
迭代4:
(1)后台
(2)客户端
(3)结果
迭代5:
(1)后台
(2)客户端
(3)结果
相关文章推荐
- 【CF应用开发大赛】微博社交简历
- PHP Wrapper在SAE上的应用方法
- Python脚本实现下载合并SAE日志
- 在SAE上搭建最新wordpress的方法
- php实现SAE上使用storage上传与下载文件的方法
- 新浪SAE搭建PHP项目教程
- sae使用smarty模板的方法
- web.py在SAE中的Session问题解决方法(使用mysql存储)
- 在SAE上部署Python的Django框架的一些问题汇总
- Python Web框架Flask中使用新浪SAE云存储实例
- Maven的微信公众号项目部署到SAE用户消息无响应
- 新浪 SAE 真心坑比。。。
- PHP Wrapper在SAE上的应用方法
- ThinkPHP在新浪SAE平台的部署实例
- wordpress中加载JQuery库的几种方法
- 使用新浪SAE实现快速免费建站
- flask关于sae上传python第三方库及其调用
- php连接数据库例子
- 在sae中使用jfinal框架开发web工程遇到的问题
- SAE 免费配额用户 mysql 数据库 不支持InnoDB数据库引擎