node微信公众号开发---域名绑定

var TOKEN=‘weixin‘;           //必须与测试号所填写的Token相同

function checkSignature(params,token){
    var key=[token,params.timestamp,params.nonce].sort().join(‘‘);
     //将token (自己设置的) 、timestamp(时间戳)、nonce(随机数)三个参数进行字典排序
    var sha1=crypto.createHash(‘sha1‘);
     //将上面三个字符串拼接成一个字符串再进行sha1加密
    sha1.update(key);
    return sha1.digest(‘hex‘) ==params.signature;
     //将加密后的字符串与signature进行对比,若成功,返回echostr
}

/* GET home page. */
router.get(‘/‘, function(req, res, next) {

    var query = req.query;
	var params=qs.parse(query);
	  if(!checkSignature(params,TOKEN)){
        //如果签名不对,结束请求并返回
        res.send(‘signature fail‘);
    }
	  if (req.method == "GET") {
        //如果请求是GET,返回echostr用于通过服务器有效校验
        res.send(params.echostr);
    }else{
    	res.send({post:"json",wexin:"这是微信访问接口"})
    }
});

 这里域名绑定,需要做外网穿透,可以参考 http://www.cnblogs.com/muamaker/p/8432586.html

原文地址:https://www.cnblogs.com/muamaker/p/9058104.html

时间: 2024-10-11 22:09:45

node微信公众号开发---域名绑定的相关文章

node微信公众号开发---自动回复

微信开发的特点:1.post请求 (一定要注意,这里和配置域名的时候不一样,配置域名是get请求)2.数据包是xml格式的3.你给微信返回的数据也是xml格式的 var parseString = require('xml2js').parseString;//引入xml2js包 /** * 处理微信post消息请求 */ router.post('/', function (req, res) { try{ var buffer = []; //监听 data 事件 用于接收数据 req.on

微信公众号开发之怎样将本机IP映射成外网域名

近期一个项目须要用到微信公众号的网页授权登录,在研究这个公众号的时候遇到各种困难,现将自己的一些心得总结一下. 我想进行微信公众号开发遇到的第一个困难就是微信公众号必须输入一个外网能够訪问的域名,在网上我看到的都是使用ngrok或者花生壳的.但事实上不是必需这么麻烦.那么怎样做呢? 1.下载QQ浏览器 我想程序猿用的浏览器一般都是chrome,IE和火狐等,基本看不上QQ浏览器,但假设要开发微信公众号,我是强烈推荐下载QQ浏览器,由于都是腾讯的产品. 2.下载微信调试工具 i)在QQ浏览器中打开

利用OpenShift托管Node.js Web服务进行微信公众号开发

最近写了一个微信的翻译机器人.用户只要关注该微信号,发送英文的消息,就能收到中文翻译的回复.后台是用Node.js写的,托管在OpenShift的Paas平台上.翻译过程实际上是调用微软的Bing translation API做的,代码中用到了alexu84的bing-translate和JacksonTian的wechat这两个npm模块.下面把做的过程详细说一下. 1. 微信公众号开发 首先是要到https://mp.weixin.qq.com 申请一个公众号,并申请成为开发者.目前个人只

你所误解的微信公众号开发、以及微信公众号开发遇到的问题及详解

前言:有一星期没跟新博客了,最近太忙.项目赶进度就没把时间花在博客上:今天来说说所谓的微信公众号开发和填坑记录: 微信公众号:运行在微信终端的应用 (对于开发者来说比较爽的你只需考虑兼容微信浏览器,因为它是在微信浏览器环境下运行的) 微信公众号开发分为两部分: 一.传统开发(前后端分离) 推荐  页面量大的时候优点就尤其突出了 1. 微信首页 (即首页菜单.跳转链接.扫二维码.消息推送回复等功能) 不要慌  这些百分之90%都是后天来配置的,他们调用下微信公众平台提供的接口就ok了:为什么是后台

微信公众号开发系列教程一(调试环境部署)

原文:微信公众号开发系列教程一(调试环境部署) 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) 微信公众号火了好一阵子了,笔者算是比较早接触微信公众号开发的了,大概做了一年半了,从最开始的到处网上找demo到现在也开发一些公众号.园子里关于微信开发的教程已经数不胜数了,我也准备来凑凑热闹.一是梳理下这段时间开发的经验,二是希望能帮到想做微信开发的小伙伴们,希望大大神们吐槽的时候悠着点,

微信公众号开发系列教程一(调试环境部署续:vs远程调试)

原文:微信公众号开发系列教程一(调试环境部署续:vs远程调试) 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) 前几天决定写个微信公众平台开发系列,在发布第一篇博文后,收到了很多园友的反馈和建议,在这里感谢大家的支持,我会坚持写完这个系列,希望能帮助更多的小伙伴.特别要感谢下@ZIP,是他的一个提醒才有了这篇博文.也希望更多的小伙伴能把你的想法反馈给我. 上一篇中主要介绍的是使用花生壳

利用NATAPP隧道解决微信公众号开发之本地调试难题

一.问题 众所周知,微信公众号开发需要公网的有效域名和80端口,本机当然互联网是访问不了的.那么我们难道去一个公网的服务器去开发吗?那样是不是太土了. 答案当然是,NO 当然我们在做微信支付的时候,有些URL需要域名进行备案了,那么我们首先需要准备一个域名,并且通过的备案,我这里是阿里的一个域名smartbi.club 已经个人备案成功,ICP可查 二.解决问题 2.1.准备条件 硬件:笔记本 软件:Tomcat+NATAPP软件https://natapp.cn+通过备案的域名 注册一个nat

PHP微信公众号开发常用功能

最近学习了关于微信公众号开发的相关知识,为了帮助自己更好的理解,在此重新再梳理一遍 更多关于微信公众号开发的功能可以参考微信公众平台的开发技术文档 完成开发者配置 第一步,需要在微信公众平台配置我们的服务器  在接口的文件需要写入以下代码以完成验证: class Wxapi { public function __construct() { $this->index(); } public function index() { $echostr = isset($_GET['echostr'])

微信公众号开发--接入

微信公众号开发 微信开发者工具:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 需要绑定开发者账号:微信公众平台--开发者工具--web开发者工具--绑定开发者微信号 微信公众平台接口调试工具:https://mp.weixin.qq.com/debug/ 接口调试需要使用"access_token",access_token的获取需要从在基本设置中的url访问获取,其他终端基本无法获取 1