1.1.1 • Published 5 years ago

mk-egg-weapp-sdk v1.1.1

Weekly downloads
5
License
MIT
Repository
github
Last release
5 years ago

egg-weapp-sdk

NPM version build status Test coverage David deps Known Vulnerabilities npm download

可移步中文文档

Dependencies

  • egg-redis

  • qcloud-weapp-client-sdk for Weapp Client

    Egg-weapp-sdk should be interacted with qcloud-weapp-client-sdk in Weapp Client

Demo

egg-24time

Server Egg,Mysql,Redis, ES6

weapp-24time

Weapp Client

Install

$ npm i egg-weapp-sdk --save

Usage

// {app_root}/config/plugin.js
exports.redis = {
  enable: true,
  package: 'egg-redis',
};

exports.weappSDK = {
  enable: true,
  package: 'egg-weapp-sdk',
};

Configuration

// {app_root}/config/config.default.js

module.exports = appInfo => {
  const config = {};

  config.redis = {
    client: {
      host: '127.0.0.1',
      port: '6379',
      password: '',
      db: '0',
    },
  };

  // replace your appId and appSecret of WEAPP
  config.weappSDK = {
    appId: 'xxxxxxxxxxx',
    appSecret: 'xxxxxxxxxxxxxxxxxx',
  };

  return config;
};
  • Why and What: Manage weapp user session independently, use Redis to store session.

see config/config.default.js for more detail.

  • Two methods:
  1. Login: loginService.login()

  2. Check: loginService.check()

Example

// app/controller/weapp.js
module.exports = app => {
  class WeappController extends app.Controller {
    * login() {
      const { ctx, app } = this;
      const loginService = app.weapp.LoginService.create(ctx.request, ctx.response);
      yield loginService.login()
        .then(data => {
          ctx.body = data;
        });
    }

    * user() {
      const { ctx, app } = this;
      const loginService = app.weapp.LoginService.create(ctx.request, ctx.response);
      yield loginService.check()
        .then(data => {
          ctx.body = {
            code: 0,
            message: 'ok',
            data: {
              userInfo: data.userInfo,
            },
          };
        });
    }
  }
  return WeappController;
};

Credits && Inspiration

腾讯云微信小程序客户端 SDK

Questions & Suggestions

Please open an issue here.

License

MIT