使用localtunne一分钟搞定微信公众号接入
记得15年那个刚刚进入工作的时候,公司有个微信公众号的项目,那个时候微信官方没有什么调试工具,也没有什么比较好的本地调试工具。当时有个功能需要调用微信JSSDK里面的扫一扫的功能。由于本地不能调试。开发起来很烦。每次都需要把代码上传到测试服务器,然后在测试。这样耗费了不少时间。前几天之前的同事再次开发公众号的时候。出了一些问题。然后在讨论的时候。得知了一个微信公众号本地开发的神器"localtunne"。可以自己本地直接调试开发微信公号。调用JSSDK。使用非常简单。
什么是localtunne
Localtunnel 是一个可以让内网服务器暴露到公网上的开源项目。项目地址。他可以让你本地项目只需要一句命令直接让外网访问。
怎么安装localtunne
localtunnel是基于Node.js。所有你本地需要安装nodeJS。如果本地已经安装直接运行
#安装localtunnel
npm install -g localtunnel
#查看当前版本。现在最新是1.8.3
lt --version
没有安装nodejs的可以参考nodejs官方下载安装。官网
接入微信公众号
已经安装好了localtunne,怎么关联微信公众号呢?首先打开微信公众平台接口测试帐号申请 。直接使用手机微信扫码登录。
然后看到需要填写接口配置信息和JS接口安全域名。

这个时候就需要用到刚刚我们安装的localtunnel。我们直接在控制台输入
#这里3000指的是我本地程序的监听的端口。根据具体项目修改。运行成功会返回一个域名。这个域名等会会用到。
robin:~ robin$ lt --port 3000
your url is: https://wvfgfpvsdm.localtunnel.me
这里我们需要一段代码来做认证使用。 代码如下:
const Koa = require('koa');
const app = new Koa();
let config = require('./config/config');
let sha1 = require('sha1');
app.use(async ctx => {
//仅仅用于测试
console.log(ctx.query)
let token = config.token;
let {signature, timestamp, nonce, echostr} = ctx.query;
let arr = [token, timestamp, nonce];
let str = sha1(arr.sort().join(''));
if (str === signature) {
ctx.body = echostr+ '';
}else {
ctx.body = '出错了';
}
});
app.listen(3000);
首先运行上面那段代码。然后我们把拿到域名了填写到网页上面。token可以随便填写要记住。然后点击提交按钮。这个时候会直接提示配置成功。同时本地程序也收到了微信的请求。

这个时候已经完成了对公众号的接入。简单吧。如果需要用到JS接口还需要配置JS接口安全域名。 这个一个坑就是复制自己域名的时候千万不要带任何的协议。只需要复制https://或者http://后面部门就可以了。然后点击保存之后。就可以很愉快的使用js相关的API啦。当然localtunnel也有很多别的一些功能。有兴趣的可以研究下。
使用localtunne一分钟搞定微信公众号接入的更多相关文章
- 2014-07-23 .NET实现微信公众号接入
今天是在吾索实习的第11天.今天我跟我的实习小组的组员们,解决了关于使用ASP.NET进行微信公众号接入的问题.因为我们小组成员也是刚接触微信公众号的二次开发,所以在解决该问题的工程中也走了不少弯路. ...
- thinkphp5.0 微信公众号接入支付宝支付
---恢复内容开始--- 真是无力吐槽这个需求了,想骂客户,好端端的非要在微信公众号接入支付宝,都知道微信公众号是拒绝支付宝的,屏蔽了支付宝,所以在微信公众号接入支付宝的话就必须手动复制链接跳出微信内 ...
- php 微信公众号接入支付宝支付
真是无力吐槽这个需求了,好端端的非要在微信公众号接入支付宝,都知道微信公众号是拒绝支付宝的,屏蔽了支付宝,所以在微信公众号接入支付宝的话就必须手动复制链接跳出微信内置浏览器,强制性打开web浏览器完成 ...
- 微信公众号接入之排序问题小记 Arrays.sort()
微信公众号作为强大的自媒体工具,对接一下是很正常的了.不过这不是本文的方向,本文的方向公众号接入的排序问题. 最近接了一个重构的小项目,需要将原有的php的公众号后台系统,转换为java系统.当然,也 ...
- 十分钟搞定微信企业帐号“echostr校验失败,请您检查是否正确解密并输出明文echostr”
问题域:在这里我们只解决密文可以正确解密,但微信验证提示“echostr校验失败,请您检查是否正确解密并输出明文echostr”的问题. 干货:没有正确验证的原因是:你给微信返回的是字符串,而微信需要 ...
- Node.js+Koa开发微信公众号个人笔记(一)准备工作
本人也是在学习过程中,所以文章只作为学习笔记,如果能帮到你,那就更好啦~当然也难免会有错误,请不吝指出~ 一.准备工作 1.本人学习教程:慕课网Scott老师的<Node.js七天搞定微信公众号 ...
- 微信公众号token的asp.net脚本
老板让我搞一个微信公众号.好吧.前面都很EZ,直到要使用一个token验证服务器的有效性. 看了下文档,大概意思就是微信的服务器用GET请求访问你的服务器. 其中包含了signature,nonce, ...
- 微信公众号开发C#系列-6、消息管理-普通消息接受处理
1.概述 通过前面章节的学习,我们已经对微信的开发有了基本的掌握与熟悉,基本可以上手做复杂的应用了.本篇我们将详细讲解微信消息管理中普通消息的接收与处理.当普通微信用户向公众账号发消息时,微信服务器将 ...
- 用java开发微信公众号:接收和被动回复普通消息(三)
上篇说完了如何接入微信公众号,本文说一下微信公众号的最基本功能:普通消息的接收和回复.说到普通消息,那么什么是微信公众号所定义的普通消息呢,微信开发者文档中提到的接收的普通消息包括如下几类: 1.文本 ...
随机推荐
- Yii2自带的验证码背景颜色怎么调?
看了下面的这张图片你就知道啦!
- HttpClient调用RestFul接口(post和get方式)
/** * @version V1.0 * @Description 调用http接口工具类 * @Author pc * @Date 2018/3/2 11:03 */public class Ht ...
- Linux CentOS安装配置MySQL数据库
没什么好说的,直接正面刚吧. 安装mysql数据库 a)下载mysql源安装包:wget http://dev.mysql.com/get/mysql57-community-release-el7- ...
- VBR与CBR的区别是什么?
VBR是动态码率.CBR是静态码率. VBR(Variable Bitrate)动态比特率.也就是没有固定的比特率,压缩软件在压缩时根据音频数据即时确定使用什么比特率,这是以质量为前提兼顾文件大小的方 ...
- R语言︱机器学习模型评价指标+(转)模型出错的四大原因及如何纠错
笔者寄语:机器学习中交叉验证的方式是主要的模型评价方法,交叉验证中用到了哪些指标呢? 交叉验证将数据分为训练数据集.测试数据集,然后通过训练数据集进行训练,通过测试数据集进行测试,验证集进行验证. 模 ...
- 图像采集系统的Camera Link标准接口设计
高速数据采集系统可对相机采集得到的实时图像进行传输.实时处理,同时实现视频采集卡和计算机之间的通信.系统连接相机的接口用的是Camera Link接口,通过Camera Link接口把实时图像高速传输 ...
- MySQL出现“错误1067:进程意外终止”
1.错误描述 2.错误原因 今天,我在摸索如何利用命令查看MySQL日志,查了很多资料,大多数是通过修改my.ini文件配置.我修改了配置后,准备重启MySQL服务器,先执行了net stop mys ...
- 使用EFI引导从硬盘(U盘)安装Win7的图文教程
目前仅支持vista后的64位系统 大部分使用EFI引导安装Win7的教程都是采用光盘启动安装,虽然光盘安装比较简单,但是对于没有光驱的朋友来说还是相当不便,更不用说光盘安装的两大缺点了,一速度慢,二 ...
- linux c语言 select函数用法
linux c语言 select函数用法 表头文件 #i nclude<sys/time.h> #i nclude<sys/types.h> #i nclude<unis ...
- HTML5不允许写结束标记的元素
HTML5不允许写结束标记的元素 1.area 2.base 3.br 4.col 5.command 6.embed 7.img 8.hr 9.keygen 10.link 11.meta 12.p ...