许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。
域名 注:后续公众平台配置URL的时候会用到,没有域名的话,可以去阿里云或者腾讯云注册域名。 微信订阅号 服务器 注:这里服务器系统使用的是Cent OS 7.5 64位,没有服务器的可以去阿里云或者腾讯云选购。
安装命令
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
yum install nodejs -y
安装完成后检查是否安装完成 正常情况下这里会返回当前node版本
node -v
v8.15.1
mkdir -p /data/weapp
进入创建的目录,新建文件package.json
cat>>package.json
示例代码:
{
"name": "weapp",
"version": "1.0.0"
}
注意:name为服务包名 version为版本号
创建app.js
cat>>app.json
示例代码:
//引用 express 来支持 HTTP Server 的实现
const express = require('express');
//引用微信公共平台自动回复消息接口服务中间件
var wechat = require('wechat');
//创建一个 express 实例
const app = express();
//配置微信公众平台参数
var config = {
token: 'your token', //公众号token
appid: 'your appid', //公众号appid
encodingAESKey: 'your encodingAESKey', //公众号encodingAESKey
checkSignature: true // 可选,默认为true。由于微信公众平台接口调试工具在明文模式下不发送签名,所以如要使用该测试工具,请将其设置为false
};
app.use(express.query());
app.use('/', wechat(config, function (req, res, next) {
res.reply({
content: '你好,https://shuibo.cn',
type: 'text'
});
}));
// 监听端口,等待连接
const port = 5050;
app.listen(port);
// 输出服务器启动日志
console.log(`Server listening at http://127.0.0.1:${port}`);
appid:登录公众平台,开发 - 配置 - AppID token、encodingAESKey:基本配置 - 服务器配置 - 修改配置 URL:填写自己的域名 示例:www.shuibo.cn Token: 根据提示自定义 EncodingAESKey: 点击随机按钮来生成
安装PM2
npm install pm2 --global
安装Express
cd /data/weapp
npm install express --save
安装Wechat
cd /data/weapp
npm install wechat --save
安装完成后,使用 PM2 来启动 HTTP 服务
cd /data/weapp
pm2 start app.js
启动成功
-------------
__/\\\\\\\\\\\\\____/\\\\____________/\\\\____/\\\\\\\\\_____
_\/\\\/////////\\\_\/\\\\\\________/\\\\\\__/\\\///////\\\___
_\/\\\_______\/\\\_\/\\\//\\\____/\\\//\\\_\///______\//\\\__
_\/\\\\\\\\\\\\\/__\/\\\\///\\\/\\\/_\/\\\___________/\\\/___
_\/\\\/////////____\/\\\__\///\\\/___\/\\\________/\\\//_____
_\/\\\_____________\/\\\____\///_____\/\\\_____/\\\//________
_\/\\\_____________\/\\\_____________\/\\\___/\\\/___________
_\/\\\_____________\/\\\_____________\/\\\__/\\\\\\\\\\\\\\\_
_\///______________\///______________\///__\///////////////__
┌──────────┬────┬─────────┬──────┬───────┬────────┬─────────┬────────┬─────┬───────────┬──────┬──────────┐
│ App name │ id │ version │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ user │ watching │
├──────────┼────┼─────────┼──────┼───────┼────────┼─────────┼────────┼─────┼───────────┼──────┼──────────┤
│ app │ 0 │ 1.0.0 │ fork │ 17178 │ online │ 0 │ 0s │ 0% │ 15.3 MB │ root │ disabled │
└──────────┴────┴─────────┴──────┴───────┴────────┴─────────┴────────┴─────┴───────────┴──────┴──────────┘
服务已经在 http://ip:5050运行 查看log
pm2 logs
重启服务
pm2 restart app
yum install nginx -y
安装完成后,使用 nginx 命令启动 Nginx:
nginx
外网用户访问服务器的 Web 服务由 Nginx 提供,Nginx 需要配置反向代理才能使得 Web 服务转发到本地的 Node 服务。 Nginx 配置目录在 /etc/nginx/nginx.conf 修改配置示例:
server {
listen 80;
server_name www.shuibo.cn; #服务器配置里配置的url
location / {
proxy_pass http://127.0.0.1:5050;
}
}
然后保存重启
nginx -s reload
提交表单并且启用
关注二维码在聊天界面向微信公众号发送一条消息
最终我们会回到一条 你好,https://shuibo.cn 的回复
可能出现的错误 该公众号提供的服务出现故障,请稍后再试 解决方案请移步水波