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

co-wechat-parser

v0.1.6

Published

An XML message parser for WeChat used in Koa

Downloads

12

Readme

co-wechat-parser

解析微信推送的XML消息,可用于koa中间件,也可以直接调用,返回Promise。English document is below.

安装

使用npm安装:

npm install --save co-wechat-parser

用法示例

作为中间件使用


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(parser.middleware());

直接调用


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(function() {
	parser.parse(this.req)
		.then(function(message) {
			console.log(message);
		})
		.catch(function(error) {
			console.log(error);
		});
});

API

camelcase

默认为true,将结果Object的key转为驼峰形式。可设置为false,保持微信的原始形式。


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(parser.middleware({
    camelcase: false
}));

key

默认为body,将结果Object挂载到this.request.body上。可设置为其他的String,改变挂载属性。


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(parser.middleware({
    key: 'wexin'
}));

// 从`this.request.wexin`读取数据

secret

默认为 undefined, secret 微信密钥, 如果设置了该值, 将使用密钥签名验证微信返回的消息. 可设置为 String.


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(parser.middleware({
    secret: 'your secret from wechat'
}));

English document

An XML message parser for WeChat used in Koa. Can be middleware or promise.

Install

Install with npm

npm install --save co-wechat-parser

Example

Use as middleware


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(parser.middleware());

Use as promise


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(function() {
	parser.parse(this.req)
		.then(function(message) {
			console.log(message);
		})
		.catch(function(error) {
			console.log(error);
		});
});

API

camelcase

Default is true, will make the key of return object as camelcase. If set to false, the key will keep the original format.


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(parser.middleware({
    camelcase: false
}));

key

Default is body, will setup the result on this.request.body. Can be set to another String.


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(parser.middleware({
    key: 'wexin'
}));

// Use `this.request.wexin` to get the result.

secret

Default is undefined, secret is the merchant secret of WeChat, if set, will validate signature of payload from WeChat. Can be set as String.


var koa = require('koa');
var parser = require('co-wechat-parser');

var app = koa();
app.use(parser.middleware({
    secret: 'your secret from wechat'
}));

Published under the MIT License.