一、服务接入
目前支持两种方式的数据接入:拉取和推送。如果使用“拉取”,需要开发者填入种子链接,由vivo服务器去爬取数据内容;如果使用“推送”,需要按照《开放接口开发指南》中的说明获取开放接口的Access Token,然后参考下文推送章节调用推送接口推送数据。
1.协议要求
如果是拉取方式,开发者提供的接口必须满足以下基本要求:
1)必须是https的get接口,用http状态码表示是否成功:200表示成功,其它表示接口错误。
2)返回数据统一使用json格式。
3)每个https接口返回的数据大小不要超过30M,如果超过30M,可以拆分成多个接口。
如果是推送方式,开发者推送的数据必须满足以下基本要求:
1)post接口单次数据推送大小不要超过1M,如果超过1M,可以分成多次推送。
2.数据拉取
功能描述 | 该接口主要是通过合作方在平台上以数据接入的方式提供的数据获取链接拉取合作数据 | |||
接口名称 | 合作方在平台上以数据接入方式接入所提供的链接 | |||
协议 | HTTPS | |||
请求方法 | GET | |||
调用方向 | Jovi服务平台 ->开发者服务器 | |||
接口备注 | ||||
请求头 | 字段名 | 字段类型 | 是否必须 | 字段描述 |
无 | ||||
输入参数 | 字段名 | 字段类型 | 是否必须 | 字段描述 |
page | Int | N | 分页参数,用于将大批量数据分开传送,默认值为0,必须支持不传入page和size的情况,即page为缺省值0,size为缺省值50 | |
size | Int | N | 单个分页数据条数,默认值为50 | |
ts | String | Y | 时间戳,用于加密,单位:毫秒,备注:参与加密签名 | |
token | String | Y | 通过Base64(HMAC-SHA256(vivo#Secret key, ts))生成,其中Secret key可以在创建服务草稿或服务详情中获得,长度为30位,详见:2.4.5签名计算方法 | |
last_update | String | N | 该字段会用于区分是否增量更新,若未传该参表示全量更新,传入该时间戳时,将增量更新该时间戳之后的数据 | |
响应头 | 字段名 | 字段类型 | 是否必须 | 字段描述 |
输出参数(Json) | 字段名 | 字段类型 | 是否必须 | 字段描述 |
code | Int | Y | 状态返回码 | |
page | Int | Y | 当前数据所在的page分页 | |
size | Int | Y | 当前数据分页的数量 | |
total | Long | Y | 数据总量 | |
sid | String | Y | 当前数据所属的service_id(可以在Jovi服务平台创建数据接入服务草稿或服务详情中获得) | |
did | String | Y | 当前数据所属的数据标准类型id | |
bizs | Array | Y | 具体垂类数据 | |
请求示例 | Request:
GET /xxxx/xxxxxxx/info?page=0&size=50&ts=1560135947000&token=xeaJh0jJ/T7JV0KEKIit5W/gtzASc6Q36EgZqQiiTEM= Host: cp.link.com.cn Accept: */* Cache-Control: no-cache Connection: keep-alive cache-control: no-cache Response: HTTP/1.1 200 OK Cache-Control: no-store Pragma: no-cache Content-Type: application/json;charset=UTF-8 Proxy-Connection: Keep-alive { "code": 200, "page": 0, "size": 50, "total": 150000, "sid": "test_sid", "did": "test_did", "bizs": [ { "id": "uniqe-sample-id-1", "a-key": "a-value", "op":0 }, { "id": "uniqe-sample-id-2", "b-key": "b-value", "op":1 } ] } |
3.数据推送
接口名称 | https://joviopen.vivo.com.cn/openapi/content/post | |||
协议名称 | HTTPS | |||
请求方法 | POST | |||
消息方向 | 开发者服务器 -> Jovi开放平台 | |||
接口备注 | ||||
请求包头 | 字段名 | 字段类型 | 是否必须 | 字段描述 |
access-token | String | Y | 参考《开放接口开发指南》获取服务AccessToken | |
service-version | int | Y | 在Jovi服务平台创建数据接入草稿或服务详情中获得,即服务的版本号 | |
输入参数(request body -json) | 字段名 | 字段类型 | 是否必须 | 字段描述 |
参考 | ||||
响应包头 | 字段名 | 字段类型 | 是否必须 | 字段描述 |
无 | ||||
输出参数 | 字段名 | 字段类型 | 是否必须 | 字段描述 |
code | int | Y | 接口调用状态码 | |
请求示例 | Request:
POST /openapi/content/post HTTP/1.1 access-token: ACCESS-TOKEN service-version: 1 Content-Type: text/plain Accept: */* Cache-Control: no-cache Host: joviopen.vivo.com.cn accept-encoding: gzip, deflate content-length: 15 Connection: keep-alive {"key":"value"} Response: HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 Transfer-Encoding: chunked Proxy-Connection: Keep-alive {"code":0} |
4.bizs格式
参数表 | 参数含义 | 是否必须 | 举例 |
id | CP对应当前数据条目的唯一id | 是 | |
op | 数据操作类型:
0:添加(默认,缺省值) 1:更新 |
否 | |
其他 | 参考3垂类数据标准详细定义 | 是 |
5.签名计算方法
用于验证请求来源,计算方法:Base64(HMAC-SHA256(vivo#Secret key, ts))
其中:Secret key可以在创建服务草稿或服务详情中获得,长度:30位,
假设:Secret key 为:mBZeoQIbOrPZRZnDTbsoIEntq3v9pb
ts为:1560135947000
则token的计算及结果为:
token=Base64(HMAC-SHA256(vivo#mBZeoQIbOrPZRZnDTbsoIEntq3v9pb,1560135947000))
=xeaJh0jJ/T7JV0KEKIit5W/gtzASc6Q36EgZqQiiTEM=
目前在vivo开户的时间需要多久?开户的费用是多少?广告主可以来沃木网络咨询,现在vivo开户价格低,5000元起充,客户反馈效不错,推广请咨询: 沃木网络!
有任何OPPO或vivo的广告需求,欢迎与我们取得联系。
欢迎扫码添加以下微信,或者拨打电话198-9888-5878(微信同号)咨询