UNPKG

@jinyexin/wechat

Version:

A simple wechat server lib

75 lines (51 loc) 2.21 kB
# wechat A simple wechat server lib [source code](https://gitlab.com/jinyexin/wechat) ## Prerequisites: * npm i -g typescript * you need set "proxy_set_header X-Real-IP $remote_addr;" in your nginx config, so unifiedorder will have correct ip ## changelog See [CHANGELOG](https://gitlab.com/jinyexin/wechat/blob/master/CHANGELOG.md) ## about node-gyp see https://github.com/nodejs/node-gyp#installation, if you have trouble with wechat server xml2json support ## exposed api {POST} /transfer {POST} /pay {POST} /unifiedorder {POST} /templateMessage {POST} /paySign {GET} /signature {GET} /auth //scope=snsapi_base can only get openid {GET} /auth_userinfo //scope=snsapi_userinfo can send second request to get user info {GET} /authAndRegister {POST} / //get message from wechat {GET} / //checkSignature from wechat ## example config //wechat config config.wechat = {}; config.wechat.token = "enixjin"; config.wechat.tokenTimeout = (90 * 60) * 1000;//refresh token every 90 mins config.wechat.appID = "123456789"; config.wechat.appsecret = "123456789"; config.wechat.mch_id = "10000100"; config.wechat.key = "123456789"; config.wechat.notify_url = "http://wechat.yoursite.com/pay"; //domain config for register config.domainServer = "domain.yoursite.com"; config.domainPort = 9802; config.domainWechatLoginUrl = "/loginWechat"; config.domainOrderAPI = "/api/purchaseOrders/order"; ## example code create you own handle or use default handle //default handler export class defaultHandler extends abstractHandler { handleTextMessage(message: textMessage, response: textMessage): textMessage { response.Content = `欢迎互动`; return response; } handleEventSubscribeMessage(message: eventMessage, response: textMessage): textMessage { response.Content = `欢迎加入`; return response; } ... }