HotApp小程序JS SDK文档
1. 一行代码接入统计
HotApp微信小程序接入只需要在小程序中加入一段代码
调用hotapp.onEvent会给我们的统计后台发送事件, 您首先必须要在后台添加事件, 调用此接口才会生效。
示例
4. clearData()
hotapp.clearData会清空hotapp sdk设置的所有的缓存数据.
5. wxlogin(closure)
hotapp.wxlogin会调用我们提供的微信登录功能获取微信小程序用户的openid, 有了openid就可以唯一地标识一个用户了.
如果您没有在我们的后台设置AppID和AppSecret, 那么获取到的是我们给您生成的一个id, 我们称为fakeOpenId, 也可以标识一个用户, 但是当用户清空缓存或者更换手机设备, 那么又会生成一个id
在回调中使用
在回调中使用
当您正确填写AppID和AppSecret, 并且hotapp.login()调用成功, 那么就可以通过这个方法获取小程序用户的openid来唯一标识用户了.
7. getFakeOpenID(closure)
如果没有填写AppID和AppSecret, 或者AppID和AppSecret填写错误, 或者微信登录接口调用失败, 我们会生成一个fakeOpenID, 来唯一标识使用小程序的用户, 然后就可以调用这个方法来取得fakeOpenID
示例
8. genPrimaryKey(String prefix)
hotapp.genPrimaryKey可以生成一个与业务逻辑和用户有关的唯一key
比如prefix_2efsdFef2FEE-fdsf2f_1423453220
其中:
prefix是通过函数传递过来的参数
2efsdFef2FEE-fdsf2f是用户的openID(如果没有填写AppID和AppSecret, 那么就是fakeOpenID)
1423453220是一个时间戳
可以根据您小程序的业务逻辑, 生成不同的前缀, 来配合我们提供的云后台接口方便使用.
比如, 在HotApp云笔记项目中, 我们用item来标识笔记, 用feedback来标识反馈 当用户新建一条笔记时, 我们调用
当用户提交一个反馈时, 我们调用
9. getPrefix(String prefix)
hotapp.getPrefix会生成一个key的前缀, 比如: prefix_2efsdFef2FEE-fdsf2f_
您有可能需要查找所有带指定前缀的key, 那么就可以先调用这个获取key的前缀, 然后再调用hotapp.searchkey
10, replaceOpenIdKey(String primaryKey, closure cb)
hotapp.replaceOpenIdKey会把通过fakeOpenID生成的primaryKey替换成用openid生成的primaryKey.
在HotApp云笔记中, 我们考虑到一种场景: 当您的用户第一次调用登录接口时, 没有打开网络而导致openid获取失败, 这时会生成一个fakeOpenID, 然后用户写了几条笔记, 这几条笔记的都是保存在本地缓存中的, 这些笔记的key都是与fakeOpenID相关的. 当用户打开网络并把笔记同步到云后台时, 我们就把本地缓存中所有的通过fakeOpenID生成的primaryKey替换成用openid生成的primaryKey, 来保证数据的准确性.
11, searchkey(Object filters, closure)
hotapp.searchkey可以请求hotapp云后台的https://wxapi.hotapp.cn/api/searchkey 接口, 功能是查找带前缀的所有key
filters的参数说明:
参数 类型 必填 说明
prefix String 是 指定的key的前缀
pageIndex Integer 否 分页查询时第几页, 默认为1
pageSize Integer 否 分页查询时每页的数量, 默认为10, 0表示部分也, 查找所有的数据
withValue Boolean 否 返回值中是否携带value字段, 默认为true
order String 否 排序的column, 默认为create_time, 只有create_time和update_time可选
direction String 否 排序的方向, 默认为asc, 只有asc和desc, 分别表示从大到小和从小到大
closure是一个闭包, 可以接收到服务器返回的数据
返回值示例:
// 查找某个用户的所有笔记
12, get(String key, closure)
hotapp.get可以请求hotapp云后台的https://wxapi.hotapp.ch/api/get 接口, 功能是根据指定的key查找value
示例
13. post(String key, String value, closure)
hotapp.post可以请求hotapp云后台的 https://wxapi.hotapp.cn/api/post 接口, 功能是更新或者新增一对key-value
示例
14. del(String key, closure)
hotapp.del可以请求hotapp云后台的https://wxapi.hotapp.cn/api/del 接口, 功能是删除指定的key-value
示例
hotapp.request是把开发者的域名通过https://wxapi.hotapp.cn/proxy接口转发为开发者自己的url
该接口的调用方式, 比微信原声的wx.request多加了一个参数: useProxy, 这个参数表示是否使用我们的代理服务, 默认是true. 其余的调用方式和wx.request是一模一样的
示例
hotapp.getVersion 可以返回js sdjk的版本号,
示例
hotapp.setDebug可以设置是否打印错误日志,默认为false
示例
HotApp微信小程序接入只需要在小程序中加入一段代码
//app.js2. onEvent(String event)
var hotapp = require('utils/hotapp.js');
调用hotapp.onEvent会给我们的统计后台发送事件, 您首先必须要在后台添加事件, 调用此接口才会生效。
示例
hotapp.onEvent('regist);3. setEventUploadType()
4. clearData()
hotapp.clearData会清空hotapp sdk设置的所有的缓存数据.
5. wxlogin(closure)
hotapp.wxlogin会调用我们提供的微信登录功能获取微信小程序用户的openid, 有了openid就可以唯一地标识一个用户了.
如果您没有在我们的后台设置AppID和AppSecret, 那么获取到的是我们给您生成的一个id, 我们称为fakeOpenId, 也可以标识一个用户, 但是当用户清空缓存或者更换手机设备, 那么又会生成一个id
- 如果正确填写了AppID和AppSecret:
在回调中使用
hotapp.wxlogin(function(openID) {登录成功之后再使用
console.log(openID);
});
hotapp.wxlogin();
...
var openid hotapp.getOpenID();
- 如果没有填写AppID和AppSecret
在回调中使用
hotapp.wxlogin(function(fakeOpenID) {
console.log(fakeOpenID);
});
- 登录成功之后再使用
hotapp.wxlogin();6. getOpenID(closure)
...
var openid hotapp.getFakeOpenID();
当您正确填写AppID和AppSecret, 并且hotapp.login()调用成功, 那么就可以通过这个方法获取小程序用户的openid来唯一标识用户了.
7. getFakeOpenID(closure)
如果没有填写AppID和AppSecret, 或者AppID和AppSecret填写错误, 或者微信登录接口调用失败, 我们会生成一个fakeOpenID, 来唯一标识使用小程序的用户, 然后就可以调用这个方法来取得fakeOpenID
示例
hotapp.login();
...
var openid = hotapp.getOpenID();
if (openid) {
console.log(openID);
} else {
openid = hotapp.getFakeOpenID();
}
8. genPrimaryKey(String prefix)
hotapp.genPrimaryKey可以生成一个与业务逻辑和用户有关的唯一key
比如prefix_2efsdFef2FEE-fdsf2f_1423453220
其中:
prefix是通过函数传递过来的参数
2efsdFef2FEE-fdsf2f是用户的openID(如果没有填写AppID和AppSecret, 那么就是fakeOpenID)
1423453220是一个时间戳
可以根据您小程序的业务逻辑, 生成不同的前缀, 来配合我们提供的云后台接口方便使用.
比如, 在HotApp云笔记项目中, 我们用item来标识笔记, 用feedback来标识反馈 当用户新建一条笔记时, 我们调用
hotapp.genPrimaryKey('item');来生成笔记的key, key类似于这种: item_2fdsf2fds-fdsimw2_14243580
当用户提交一个反馈时, 我们调用
hotapp.genPrimaryKey('feedback')来生成反馈的key, key类似于这种: feedback_2fdsf2fds-fdsimw2_142435333
9. getPrefix(String prefix)
hotapp.getPrefix会生成一个key的前缀, 比如: prefix_2efsdFef2FEE-fdsf2f_
您有可能需要查找所有带指定前缀的key, 那么就可以先调用这个获取key的前缀, 然后再调用hotapp.searchkey
10, replaceOpenIdKey(String primaryKey, closure cb)
hotapp.replaceOpenIdKey会把通过fakeOpenID生成的primaryKey替换成用openid生成的primaryKey.
在HotApp云笔记中, 我们考虑到一种场景: 当您的用户第一次调用登录接口时, 没有打开网络而导致openid获取失败, 这时会生成一个fakeOpenID, 然后用户写了几条笔记, 这几条笔记的都是保存在本地缓存中的, 这些笔记的key都是与fakeOpenID相关的. 当用户打开网络并把笔记同步到云后台时, 我们就把本地缓存中所有的通过fakeOpenID生成的primaryKey替换成用openid生成的primaryKey, 来保证数据的准确性.
11, searchkey(Object filters, closure)
hotapp.searchkey可以请求hotapp云后台的https://wxapi.hotapp.cn/api/searchkey 接口, 功能是查找带前缀的所有key
filters的参数说明:
参数 类型 必填 说明
prefix String 是 指定的key的前缀
pageIndex Integer 否 分页查询时第几页, 默认为1
pageSize Integer 否 分页查询时每页的数量, 默认为10, 0表示部分也, 查找所有的数据
withValue Boolean 否 返回值中是否携带value字段, 默认为true
order String 否 排序的column, 默认为create_time, 只有create_time和update_time可选
direction String 否 排序的方向, 默认为asc, 只有asc和desc, 分别表示从大到小和从小到大
closure是一个闭包, 可以接收到服务器返回的数据
返回值示例:
{使用示例
"ret": 0,
"msg": "sucess",
"data": {
"pageIndex": 1,
"pageSize": 10,
"totalCount": 2,
"itemCount": 2,
"items": [
{
"key": "openid123_1",
"create_time": "1479808954",
"update_time": "1479883900"
},
{
"key": "openid123_2",
"create_time": "1479808996",
"update_time": "1479808996"
}]
}
}
// 查找某个用户的所有笔记
var prefix = hotapp.getPrefix('item');
var filters = {
prefix: "item",
pageIndex: 1,
pageSize: 0,
withValue: true,
order: create_time,
direction: desc
}
var items = hotapp.searchkey(filters, function(res) {
if (res.ret == 0) {
console.log(res.data);
} else {
console.log('error');
}
});
12, get(String key, closure)
hotapp.get可以请求hotapp云后台的https://wxapi.hotapp.ch/api/get 接口, 功能是根据指定的key查找value
示例
hotapp.get('item_2fdsf2fds-fdsimw2_14243580', function(res) {
if (res.ret == 0) {
console.log(res.data);
} else {
console.log('error');
}
});
13. post(String key, String value, closure)
hotapp.post可以请求hotapp云后台的 https://wxapi.hotapp.cn/api/post 接口, 功能是更新或者新增一对key-value
示例
hotapp.post('item_2fdsf2fds-fdsimw2_14243580', 'test', function(res) {
if (res.ret == 0) {
console.log(res.data);
} else {
console.log('error');
}
});
14. del(String key, closure)
hotapp.del可以请求hotapp云后台的https://wxapi.hotapp.cn/api/del 接口, 功能是删除指定的key-value
示例
hotapp.del('item_2fdsf2fds-fdsimw2_14243580', function(res) {15. request(Object)
if (res.ret == 0) {
console.log(res.data);
} else {
console.log('error');
}
});
hotapp.request是把开发者的域名通过https://wxapi.hotapp.cn/proxy接口转发为开发者自己的url
该接口的调用方式, 比微信原声的wx.request多加了一个参数: useProxy, 这个参数表示是否使用我们的代理服务, 默认是true. 其余的调用方式和wx.request是一模一样的
示例
wx.request({16. getVersion()
useProxy: true,
url: 'http://www.test.com', // 先调用https://wxapi.hotapp.cn/proxy然后再转发到http://www.test.com
data: {
x: '' ,
y: ''
},
header: {
'content-type': 'application/json'
},
success: function(res) {
console.log(res.data)
}
})
hotapp.getVersion 可以返回js sdjk的版本号,
示例
var version = hotapp.getVersion()17. setDebug(Boolean debug)
hotapp.setDebug可以设置是否打印错误日志,默认为false
示例
var hotapp=require('./utils/hotapp.js');
hotapp.setDebug(true); // 显示调试信息开关
没有找到相关结果
已邀请:
1 个回复
赞同来自: