1.0.7 • Published 6 years ago

luban-server-sdk v1.0.7

Weekly downloads
4
License
MIT
Repository
github
Last release
6 years ago

luban-server-sdk

把鲁班云函数用到的方法封装成组件,方便调用

use

install

npm i -S luban-server-sdk

require and use

const Luban = require('luban-server-sdk')
const lb = new Luban({
  sysdb: {
    host: '',
    port: '',
    username: '',
    password: '',
    database: ''
  },
  conns: [{
    name: '',
    host: '',
    port: '',
    username: '',
    password: '',
    database: ''
  }],
  redis: {
    host: '',
    port: 6379,
    password: ''
  },
  lubanConfig: {
    // 公众号
    mpAppId: '',
    mpAppSecret: '',
    // 微信小程序
    wxAppId: '',
    wxAppSecret: '',
    // qq小程序
    qqAppId: '',
    qqAppSecret: ''
  },
  qcloud: {
    appId: '',
    secretId: '',
    secretKey: ''
  },
  cos: {}
})

instance api

utils

resp

构造腾讯云函数的返回体

return lb.utils.resp(data, statusCode, headers, isBase64Encoded)
参数名类型默认值说明
dataAnynull返回给请求方的数据
statusCodeNumber200状态码
headersObject{}返回头
isBase64EncodedBooleanfalse是否base64编码(例如要返回图片,data就是图片的base64编码字符串,isBase64Encoded要设置为true)

getSessionInfo

获取session信息

getAccessToken

获取access_token(公众号、小程序)

getSignInfo

获取js签名信息(公众号)

let sessionInfo = await lb.utils.getSessionInfo(lubanAppId, lubanSessionKey)
let accessToken = await lb.utils.getAccessToken(lubanAppId, platform)
let signInfo = await lb.utils.getSignInfo(lubanAppId, weburl)
参数名类型默认值说明
lubanAppIdString鲁班AppId
lubanSessionKeyString鲁班SessionKey
platformStringwxwx=微信小程序,mp=微信公众号,qq=qq小程序
weburlString要获取签名的网页url

login

服务端统一登录接口

let loginInfo = await lb.login(data, lubanAppId, platform)
参数名类型默认值说明
dataObject登录所需的数据
lubanAppIdString鲁班AppId
platformStringwxwx=微信小程序,mp=微信公众号,qq=qq小程序

handleUserInfo

服务端统一处理用户信息接口(小程序)

let userInfo = await lb.handleUserInfo({
  encryptedData,
  iv,
  lubanAppId,
  lubanSessionKey,
  platform
})
参数名类型默认值说明
encryptedDataString用户信息加密串
ivString加密向量
lubanAppIdString鲁班AppId
lubanSessionKeyString用户sessionkey
platformStringwxwx=微信小程序,qq=qq小程序

db

// 1. 引用一个knex实例,其中aa是config中的连接名
let data = await lb.db.aa('table_name').select()

// 2. sys是一个固定连接名,用来获取系统db连接实例
// 例子:根据appid获取app信息
let app = (await lb.db.sys('app').where('appid', event.queryString.appid))[0]

cache

get

通过一个key获取缓存数据

let data = await lb.cache.get('KEY')

set

写入缓存

await lb.cache.set('KEY', 'VALUE')

setEx

写入定时过期缓存

await lb.cache.setEx('KEY', 'VALUE', 30) // 30秒自动过期

cos

腾讯云对象存储操作

upload

1.0.7

6 years ago

1.0.6

6 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago