# 自动获取 userInfo
首先需要先介绍下两个框架内置的过滤器
kh过滤器 :kh目录下的云函数需要检测用户是否已登录。pub过滤器 :pub目录下的云函数所有人都可以直接访问。kh目录下的函数默认会自动获取userInfo(当前登录用户信息)

如果此云函数不需要用户信息,可以在前端多传一个参数need_user_info:false 可以减少一次数据库查询(加快响应速度)(快 100ms 左右)
此时 依然会检测 token 是否有效,故 uid (当前登录用户 ID)仍然可以获取到(因为 uid 是从 token 中解密获取,而非查数据库)
vk.callFunction({
url: 'client/user/kh/findMyOrderList',
data: {
need_user_info: false, // 如果云函数用不到 `userInfo`,则传false可以加快接口相应速度
// 以下是你自己的参数
a: 1,
b: 2,
},
success: (data) => {},
});
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
pub目录下的云函数默认不会获取 userInfo(当前登录用户信息),且不会获取 uid(因为 pub 不解析 token)
如果pub目录下的云函数想要获取 userInfo,则可以在前端多传一个参数need_user_info:true
此处如果用户 token 有效,就可以获取到 userInfo,若 token 无效,则取不到userInfo
vk.callFunction({
url: 'client/user/pub/findGoodsInfo',
data: {
need_user_info: true, // 如果pub下的云函数需要用到 `userInfo`,则传true,
// 以下是你自己的参数
a: 1,
b: 2,
},
success: (data) => {},
});
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10