# storage.setUserInteractiveData
本接口应在服务器端调用,详细说明参见服务端API。
本接口支持云调用。需开发者工具版本 >=
1.02.1904090
(最新稳定版下载),wx-server-sdk
>=0.4.0
写用户关系链互动数据存储
调用方式:
# HTTPS 调用
# 请求地址
POST https://api.weixin.qq.com/wxa/setuserinteractivedata?access_token=ACCESS_TOKEN&signature=SIGNATURE&openid=OPENID&sig_method=SIG_METHOD
# 请求参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
access_token / cloudbase_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 |
# 返回值
# Object
返回包 JSON 数据包
属性 | 类型 | 说明 |
---|---|---|
errcode | number | 错误码 |
errmsg | string | 错误信息 |
errcode 的合法值
值 | 说明 | 最低版本 |
---|---|---|
0 | 请求成功 | |
-1 | 系统繁忙,此时请开发者稍候再试 | |
87081 | 非法的openid | |
87082 | 非法的key |
# 示例代码
curl 'https://api.weixin.qq.com/wxa/setuserinteractivedata?access_token=ACCESS_TOKEN&signature=SIGNATURE&openid=OPENID&sig_method=hmac_sha256'
-d '{"kv_list":[{"key":"1","value":0}]}'
签名的内容为{"kv_list":[{"key":"1","value":0}]}
签名的秘钥为用户的SessionKey
# 云调用
云调用是微信云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过
wx-server-sdk
使用。
# 接口方法
openapi.storage.setUserInteractiveData
需在
config.json
中配置storage.setUserInteractiveData
API 的权限,详情
# 请求参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
openid | string | 是 | 用户唯一标识符 | |
kvList | Object | 是 | 要上报的数据 |
kvList 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
key | string | 是 | 数据的key,只能填"1" | |
value | Number | 是 | 数据的value |
# 返回值
# Object
返回包 JSON 数据包
属性 | 类型 | 说明 |
---|---|---|
errCode | number | 错误码 |
errMsg | string | 错误信息 |
errCode 的合法值
值 | 说明 | 最低版本 |
---|---|---|
0 | 成功 |
# 异常
# Object
抛出的异常
属性 | 类型 | 说明 |
---|---|---|
errCode | number | 错误码 |
errMsg | string | 错误信息 |
errCode 的合法值
值 | 说明 | 最低版本 |
---|---|---|
-1 | 系统繁忙,此时请开发者稍候再试 | |
87081 | 非法的openid | |
87082 | 非法的key |
# SDK 调用示例
// cloud = require('wx-server-sdk')
// ...
// 方法返回 Promise
cloud.openapi.storage.setUserInteractiveData({
openid: 'xxx',
kvList: [{
key: '1',
value: 1,
}, {
key: '2',
value: 2,
}]
})