npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

manager-center-accounts

v1.1.19

Published

account function @manager-center

Downloads

19

Readme

manager-center-accounts

manager-center-accounts is Express-compatible authentication middleware for Node.js.

manager-center-accounts is to create user and member depended on manager-center framwork.

manager-center-accounts is also to authenticate requests which can authenicate members or users created by your own login or not

Install

npm install manager-center-accounts --save

login to get userAuth

example

var userService = require('manager-center-accounts').user;

var token = "Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJncm91cF9jb2RlIjoidGVzdCIsImdyb3VwX25hbWUiOiLmuKzoqablhazlj7giLCJyZWdpc3RyYXRvciI6IjJaaWxmak5tWjZuY2E2clc1TnNqIiwiaWF0IjoxNjE4MTQ4MDk3LCJleHAiOjE2MjY3ODgwOTcsImF1ZCI6IuS6nueRn-eOiyIsImlzcyI6IkFSVC1MYWIiLCJzdWIiOiJhY2Nlc3MtdG9rZW4ubWFuYWdlci1jZW50ZXIifQ.SGavRCAuPIiRQRjjhUUiktQvtEh-Ey2DkdCyPo_yEHQvxRrq-dypVxpdqGY2Mx2dIWXJ1iO8TyG-20Dfw26dCw"

var user = {
    email: 'admin user email',
    password: 'admin user password'
}


let main = async () => {
    try{

        let userAuth = await userService.login(token, user.email, user.password);
        console.log('userAuth:', userAuth);

    } catch (e) {
        console.error(e);
    }
}

main();

Create your users with admin user auth

example

var userService = require('manager-center-accounts').user;

var token = "Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJncm91cF9jb2RlIjoidGVzdCIsImdyb3VwX25hbWUiOiLmuKzoqablhazlj7giLCJyZWdpc3RyYXRvciI6IjJaaWxmak5tWjZuY2E2clc1TnNqIiwiaWF0IjoxNjE4MTQ4MDk3LCJleHAiOjE2MjY3ODgwOTcsImF1ZCI6IuS6nueRn-eOiyIsImlzcyI6IkFSVC1MYWIiLCJzdWIiOiJhY2Nlc3MtdG9rZW4ubWFuYWdlci1jZW50ZXIifQ.SGavRCAuPIiRQRjjhUUiktQvtEh-Ey2DkdCyPo_yEHQvxRrq-dypVxpdqGY2Mx2dIWXJ1iO8TyG-20Dfw26dCw"

var user = {
    email: 'admin user email',
    password: 'admin user password'
}


let main = async () => {
    try {

        let userAuth = await userService.login(token, user.email, user.password);
        console.log('userAuth:', userAuth);
        var newUser = {
            email: '[email protected]',
            name: 'user_tom',
            password: '123456',
            phone: '0911123456'
        }
        createUser(userAuth, newUser);

    } catch (e) {
        console.error(e);
    }
}


let createUser = async (userAuth, user) => {
    try{
    
        var newUser = await userService.createUserWithAdminUserAuth(token, userAuth, user.email, user.name, user.password, user.phone)
        console.log('newUser:', newUser);

    } catch (e){
       throw e;
    }
}

main();

Create your members

member can be created by login process or created by the following way example

var userService = require('manager-center-accounts').user;
var memberService = require('manager-center-accounts').member;

var token = "Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJncm91cF9jb2RlIjoidGVzdCIsImdyb3VwX25hbWUiOiLmuKzoqablhazlj7giLCJyZWdpc3RyYXRvciI6IjJaaWxmak5tWjZuY2E2clc1TnNqIiwiaWF0IjoxNjE4MTQ4MDk3LCJleHAiOjE2MjY3ODgwOTcsImF1ZCI6IuS6nueRn-eOiyIsImlzcyI6IkFSVC1MYWIiLCJzdWIiOiJhY2Nlc3MtdG9rZW4ubWFuYWdlci1jZW50ZXIifQ.SGavRCAuPIiRQRjjhUUiktQvtEh-Ey2DkdCyPo_yEHQvxRrq-dypVxpdqGY2Mx2dIWXJ1iO8TyG-20Dfw26dCw"

var user = {
    email: 'admin user email',
    password: 'admin user password'
}


let main = async () => {
    try {

        let userAuth = await userService.login(token, user.email, user.password);
        console.log('userAuth:', userAuth);

        var member = {
            name: 'Tom_3',
            email: '[email protected]',
            password: '123456',
            phone: '0911111111'
        }

        var newMember = await createMember(userAuth, member);
        console.log('newMember:', newMember);

    } catch (e) {
        console.error(e);
    }
}

let createMember = async (userAuth, member) => {
    try {

        return await memberService.signupWithUserAuth(token, userAuth, member);

    } catch (e) {
        throw e;
    }
}

main();

Usage of authentication middleware

  1. check and get request group_code
const validator = require('manager-center-accounts').validator;

router.route('/dosomething')
    .post([
        validator.checkToken
    ], (req, res, next) => {
        var group_code = req.payload.group_code;
        console.log('group_code', group_code);
        //do what you own
    })
  1. check member login before do something
const validator = require('manager-center-accounts').validator;    

router.route('/dosomething')
    .post([
        validator.checkToken,
        validator.checkMember
    ], (req, res, next) => {
        var member = req.member;
        console.log('member:',member);
        //do what you own
    })
  1. check user before do something
const validator = require('manager-center-accounts').validator;   

router.route('/checkUser')
    .post([
        validator.checkToken,
        validator.checkUser
    ], (req, res, next) => {
        var user = req.user;
        console.log('user:',user);
        //do what you own
    })

Get member information

var memberService = require('manager-center-accounts').member;

var member = {
    member_suuid: 'XXXXX',
    member_accesstoken: 'WWWWWWWWW'
}


let memberInfo = await memberService.getMemberInformation(bearer_token, member.suuid, member.member_accesstoken);
console.log('member information:', memberInfo);

Social login

You can let your member login by social accounts, like fb, line or google in order to login by social account, you have to register each socail platform's id, sceret and setup login information

for example: if your group code is 'test', you can let your memeber login by line as this following url:

https://accounts.manager-center.com/v2/line/login?group_code=test

You have to put group_code attribute. if you don't, the login will redirect to www.yahoo.com