约定前后端接口交互的一般形式。
使用HTTPAuth的方式,具体方法是:
headers = {
'Authorization': Base64编码认证字符串}
Base64编码认证字符串 = 'Basic ' + b64encode(username:password)
2.服务端认证用户密码后,以json方式返回token字符串。
进行请求时,将token替换用户名,密码为空(“:”还是要的)。
Base64编码认证字符串 = 'Basic ’ + b64encode(token字符串:)
3.token如果过期失效,服务器返回401,需要再次用用户和密码获取新的token。
接口返回的数据是json形式的,结构如下:
{
'status': true/false,
'msg': 一些错误提示文本,
'data': 数据,
'meta': 关于本次处理的其他信息}
status: 本次处理的结果状态 true/false;
msg: 本次处理的提示信息;
data: 本次返回的数据,可能没有,也可能是其他形式的数据
meta:必要的其他信息
year | x1 | x2 |
---|---|---|
2016年 | 1 | a |
2016年 | 2 | b |
2017年 | 3 | c |
对应的json格式:
{
'columns': [{
'label': '年', 'prop': 'year'},
{
'label': '变量1', 'prop': 'x1'},
{
'label': '变量2', 'prop': 'x2'}],
'data': [{
'year': '2016年', 'x1': 1, 'x2': 'a'},
{
'year': '2016年', 'x1': 2, 'x2': 'b'},
{
'year': '2017年', 'x1': 3, 'x2': 'c'}]
}
year | x1 | x2 |
---|---|---|
2016年 | 1 | a |
2016年 | 2 | b |
2017年 | 3 | c |
按年份拆分成多个(2个)表格返回
{
'2016年': {
'columns':
[{
'label': 'x1', 'prop': 'x1'},
{
'label': 'x2', 'prop': 'x2'}],
'data':
[{
'x1': 1, 'x2': 'a'},
{
'x1': 2, 'x2': 'b'}]},
'2017年': {
'columns':
[{
'label': 'x1', 'prop': 'x1'},
{
'label': 'x2', 'prop': 'x2'}],
'data': [{
'x1': 3, 'x2': 'c'}]}}