codecamp
QQ小游戏 开放数据

removeUserStorage

本接口应在服务器端调用,详细说明参见服务端API。
删除已经上报到QQ的key-value数据

请求地址

POST https://api.q.qq.com/api/openDataContext/remove_user_storage?access_token=ACCESS_TOKEN&signature=SIGNATURE&openid=OPENID&sig_method=SIG_METHOD

请求参数

属性 类型 默认值 必填 说明
access_token string 接口调用凭证
openid string 用户唯一标识符
signature string 用户登录态签名,签名算法请参考用户登录态签名算法
sig_method string 用户登录态签名的哈希方法,如hmac_sha256等,请参考用户登录态签名算法
key string 要删除的数据key列表

返回值

Object

返回的 JSON 数据包

属性 类型 说明
errcode number 错误码
errmsg number 错误信息

errcode 的合法值

说明
0 请求成功
-1 系统繁忙,此时请开发者稍候再试

示例代码

curl -d '{ "key":["gold", "score"] }' \
'https://api.q.qq.com/api/openDataContext/remove_user_storage?access_token=ACCESS_TOKEN&signature=SIGNATURE&openid=OPENID&sig_method=SIG_METHOD'

setUserStorage

本接口应在服务器端调用,详细说明参见服务端API。 上报用户数据后台接口。小游戏可以通过本接口上报key-value数据到用户的CloudStorage。

请求地址

POST https://api.q.qq.com/api/openDataContext/set_user_storage?access_token=ACCESS_TOKEN&signature=SIGNATURE&openid=OPENID&sig_method=SIG_METHOD

请求参数

属性 类型 默认值 必填 说明
access_token string 接口调用凭证
openid string 用户唯一标识符
signature string 用户登录态签名,签名算法请参考用户登录态签名算法
sig_method string 用户登录态签名的哈希方法,如hmac_sha256等,请参考用户登录态签名算法
kv_list Object 要上报的数据

kv_list 的结构

属性 类型 默认值 必填 说明
key string 数据的key
value string 数据的value

返回值

Object

返回的 JSON 数据包

属性 类型 说明
errcode number 错误码
errmsg number 错误信息

errcode 的合法值

说明
0 请求成功
-1 系统繁忙,此时请开发者稍候再试
87016 由于某个key-value长度超过限制而上报失败。
87017 由于用户存储的数据量超过限制而上报失败。
87018 由于用户存储的key-value对数量超过限制而上报失败。
87019 由于某个key长度超过限制而上报失败。

示例代码

curl -d '{ "kv_list":[{"key":"score","value":"100"},{"key":"gold","value":"3000"}] }' 'https://api.q.qq.com/api/openDataContext/set_user_storage?access_token=ACCESS_TOKEN&signature=SIGNATURE&openid=OPENID&sig_method=SIG_METHOD'

托管数据的限制

如果在上报数据时触发这些限制,设置数据会失败并且会收到带错误码的返回包。 每个openid所标识的QQ用户,在游戏当中的托管的数据不能超过128个key-value对。

上报的key-value列表当中每一项的key+value长度都不能超过1K(1024)字节。

上报的key-value列表当中每一个key长度都不能超过128字节。

setUserInteractiveData

本接口应在服务器端调用,详细说明参见服务端API。 写用户关系链互动数据存储。

请求地址

POST https://api.q.qq.com/api/setuserinteractivedata?access_token=ACCESS_TOKEN&signature=SIGNATURE&openid=OPENID&sig_method=SIG_METHOD

请求参数

属性 类型 默认值 必填 说明 access_token string

是 接口调用凭证 openid string

是 用户唯一标识符 signature string

是 用户登录态签名,签名算法请参考用户登录态签名算法 sig_method string

是 用户登录态签名的哈希方法,如hmac_sha256等,请参考用户登录态签名算法 kv_list Object

是 要上报的数据 kv_list 的结构 属性 类型 默认值 必填 说明 key string

是 需要修改的数据的 key,目前可以为 '1' - '50' value Number

是 数据的value,目前只能为 1

返回值

Object

返回的 JSON 数据包 属性 类型 说明 errcode number 错误码 errmsg number 错误信息 errcode 的合法值 值 说明 0 请求成功 -1 系统繁忙,此时请开发者稍候再试 -2 kv_list不存在 -3 鉴权参数类型错误 -4 鉴权参数缺失 -100050007 签名校验失败 -100050019 accesstoken错误

示例代码

curl -d '{ "kv_list":[{"key":"score","value":"100"},{"key":"gold","value":"3000"}] }' 'https://api.q.qq.com/api/setuserinteractivedata?access_token=ACCESS_TOKEN&signature=SIGNATURE&openid=OPENID&sig_method=SIG_METHOD'

签名的内容为{"kv_list":[{"key":"1","value":0}]} 签名的秘钥为用户的SessionKey

QQ小程序 登录
QQ小游戏 模板信息
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

QQ小程序 开发

硬件能力

QQ小程序 云开发

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }