文档中心 > YunOS开放平台

META数据接入单任务开发指南

更新时间:2017/08/17 访问次数:2359

1、说明

  • a. 适用于较小的数据——每一次拉取数据行数为10000行以内,或数据大小在1G以内。而且拉取数数据时间不得超过1个小时。
  • b.一般适合增量数据的导入
  • c.有java,net,c#的sdk包,易封装
  • d.交互流程简单,安全

2、数据交互

image

上图中,黄色的部分为需要加密的数据,如果选择不加密,则步骤可以省略。

3、接口请求方式

HTTP POST

4、接口传入参数

4.1、http post请求的参数原型

4.1.1、签名模式示例

request中只有一个入参key=data,示例如下:

"data": "{\"sign\":\"3AE1EA803199E3273B34244F94555B76\",\"sysTime\":\"1479795735910\",\"traceId\":\"a5NaR5wz51k6mrNUCcISWXjqs9HSWDxv\",\"offset\":\"-1\",\"size\":\"3\"}"

4.1.2、加密模式示例

request中有两个入参,key=data(数据),key=k(加密后的随机秘钥),示例如下:

"data": "KW75EvX/1tvjUzfHfFAsYKkmLL4xQJuoqPsT6KyQ4S3IJJPuGjxUBIMFYh+oRI0+RnPdgfg07kvlzTAb3fmDsUaF0BitJyiAt0m6SFrbg8X9Z0R5UbBI0Y6VNkTovB/tHedTvlKVvtxvO823jsRTPV3vU49gg9fBGwMLeb69MPbJ0t3mO7PkV++mazlnEmY6", // 加密后的参数
"k": "+D4T2AFUrtFMsYjGS04e5gtrQoFNFrPPousdkc8afQg=" //随机密钥

4.2、data字段详细说明

备注:以下字段所有必填

参数名 示例(string) 说明
size 100 当次请求的数据大小,建议使用该字段来限制每次返回条数,特殊情况可忽略,返回量不能太大
offset -1 偏移量,首次访问是为:-1,后续值为每次请求返回的nextOffset
traceId a5OPxOAuBcIybHSWDxPhpsNUiqsttNAQ 本次请求的id号,将该id一并带回,方便问题跟踪
sign 37BC2C64D415127BBEA6ED571648C388 参数签名
sysTime 1482405340376 请求的时间戳

5、接口返回值

5.1、返回参字段详细说明

备注:以下字段所有必填

参数名 示例(string) 说明
code 200 返回错误码,每次返回必须填写, 如果没有数据了请返回404 ,其他枚举值详见:7、code错误码约定
msg OK 成功
traceId a5OPxOAuBcIybHSWDxPhpsNUiqsttNAQ 本次请求的id号,将该id一并带回,方便问题跟踪
jsonModel [{\“id":\”id_test\“,\”title\“:\”title_1\"}] 数据部分
sign 37BC2C64D415127BBEA6ED571648C388 数据签名
nextOffset -1 下一个偏移量, 每次返回必须带,即使本次拉取数据结束(即code=404) ,具体内容由开发者自己来维护,YunOS下次请求是会携带该值作为请求参数key=offset的值来增量拉取

5.2、返回值示例

{
	"code": 200,
	"traceId": "a5LitlBGeoMAcIyPBQBQBwOg51k6GSiq", //请求的traceId带回
	"msg": "success",
	"jsonModel": "[{\"id\":\"id_test\",\"title\":\"title_1\"}]", //数据部分
	"sign": "D5033494985DA52F59AE8438510E80FB",//md5(jsonModel)
	"nextOffset": "0" //下一个偏移量
}

5.3、JsonModel数据格式示例

[{
	"feedback": 51376562122,
	"comment_count": 1625,
	"murl": "http://toutiao.com/group/51376562122/",
	"like_count": 33629,	
	"labels": "段子"
},
{
	"feedback": 51394517874,
	"comment_count": 150,
	"murl": "http://toutiao.com/group/51394517874/",
	"like_count": 8396,
	"labels": "段子"
}]

6、代码示例

代码提取地址http://yunpan.taobao.com/s/71sepP5fL7 (提取码:HjGW3M)

类文件名 说明
DataPullSdkServlet.java 实现基类
DataPullAesServlet.java 加密模式代码示例
DataPullSignServlet.java 签名模式代码示例
PullDataAesTest.java 加密模式,模拟测试代码
PullDataSignTest.java 签名模式,模拟测试代码

7、code错误码约定

错误码 说明
200 成功
400 参数异常
403 签名验证失败
404 没有数据,数据拉取结束符
500 参数异常

FAQ

关于此文档暂时还没有FAQ
返回
顶部