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 🙏

© 2026 – Pkg Stats / Ryan Hefner

access-token-mongo

v2.0.0

Published

使用MongoDB读取和保存access_token信息

Downloads

16

Readme

access-token-mongo

使用MongoDB读取和保存access_token

目的

当我们调用某些基于OAuth认证的API时,常常需要使用保存在一定时间范围内有效的access_token信息。 access-token-mongo组件为此类功能提供了统一的解决方案,使用MongoDB保存需要access_token。

安装

npm install access-token-mongo

用法

保存和读取微信企业号平台操作时生成的access_token

var API = require('wechat-enterprise-api');

// 2.0 以上版本使用 MongoDB的 Db 对象进行初始化
var AccessToken = require('access-token-mongo')(db);

var wxapi = new API('your appId', 'your secret', 0,
    function(callback){
        AccessToken.getToken({      // 获取数据库中保存的access_token
            appId: 'your appId',
            appSecret: 'your secret'
        }, function(err, token){
            callback(null, token);
        });
    },
    function(token, callback){
        AccessToken.saveToken({     // 保存access_token到数据库中
            appId: 'your appId',
            appSecret: 'your secret'
        }, token, function(){
            callback(null, token);
        });
    });

API

初始化

var AccessToken = require('access-token-mongo')(db, collectionName);

当我们需要使用 access-token-mongo时,首先需要初始化,初始化方法有两个参数:

  • db MongoDB数据库的连接对象。此参数是必须的。
  • collectionName 此参数用于指定存放access_token数据的collection的名称。此参数是可选的,默认为“access_tokens”。

读取access_token

AccessToken.getToken(options, callback)

读取access_token的方法包括两个参数:

  • options 参数对象。包括:
    • appId 用于指定获取access_token的appId,以便唯一标识一个access_token。此参数是必须的。
    • secret 用于指定获取access_token的secret,以便唯一标识一个access_token。此参数是必须的。
  • callback 读取acccess_token之后执行的回调函数。包括两参数:
    • err 读取失败时的错误提示
    • token 读取到的access_token对象。

保存access_token

AccessToken.saveToken(options, token, callback);

保存access_token的方法包括三个参数:

  • options 参数对象。包括:
    • appId 用于指定获取access_token的appId,以便唯一标识一个access_token。此参数是必须的。
    • secret 用于指定获取access_token的secret,以便唯一标识一个access_token。此参数是必须的。
    • expire 用于指定当前access_token的过期时间,单位是秒。此参数是可选的,默认为7000。
  • callback 读取acccess_token之后执行的回调函数。包括两参数:
    • err 保存失败时的错误提示。无错误即保存成功。
    • doc 保存access_token之后返回的对象。一般用不到。