微信后台开发第一步:nodeJS+express接入微信后台详细教程

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 博文由  水车  编写 欢迎各位指正,转载请把链接带上——http://www.cnblogs.com/xuange306/p/4971702.html 前期准备工作   1:如果你没有服务器,那你需要一个内网映射工具:我用的是《花生壳》(PS:这不是广告),花生壳在实名认证是需要8RMB的认证费,之后就可以永久使用了,并且支持80端口映射,     注:花生壳在免费申请时要申请内网,不要申请公网。

博文由  水车  编写

欢迎各位指正,转载请把链接带上——http://www.cnblogs.com/xuange306/p/4971702.html

前期准备工作

  1:如果你没有服务器,那你需要一个内网映射工具:我用的是《花生壳》(PS:这不是广告),花生壳在实名认证是需要8RMB的认证费,之后就可以永久使用了,并且支持80端口映射,

    注:花生壳在免费申请时要申请内网,不要申请公网。

  2:nodeJS 最新版本,安装教程自行上网搜索

  3:一个注册号的微信公众号,自行申请,这里不做说明,网上教程已经比较成熟;

  

花生壳使用教程

  下载地址: http://hsk.oray.com/download/

  安装:没有需要注意的

  注册账号:

  

  进去点击个人注册,如果你是企业,那就点击企业注册;

  注册成功后登陆客户端

  登陆后具体怎么做我忘了,(省略实名认证过程)总之会让你支付8RMB,付款后就可以使用了

  这时你应该已经生成了自己的映射域名了;

  

  双击域名

    

  注意的地方如上图,点击确定;添加成功了,再补充一点:上图中有个80端口,那是你本地服务器的端口,和你自己的端口保持一致就行了,比如你设置的是3000端口,你就改为3000;

nodeJS配置及使用

  1:确认自己的nodeJS安装成功,在cmd中输入node -v 

    可以看到自己node的安装版本

    

  2:安装express4.x

    这里需要说明的是express4.x在使用上和express3.x略有不同;

    1:安装全局的express包

    

    在cmd任意位置执行以下代码

npm install -g express-generator

    2:cmd进入到你需要创建项目的目录下;我以我的D:/test 文件夹为例

    创建express项目,porjectName是你的项目文件夹名字,我这里以weixin命名

express porjectName

  

    

    这里我们在文件夹里可以看到已经创建好了一个文件夹,名字就是weixin

    

    这时再执行

cd weixin && npm install

    

    安装成功7个npm包后,我们就开始测试下我们的服务器能否正常启动!这里需要注意的是,express4.x创建的服务器默认端口为3000;如果需要改端口,bin/www文件里改

    

    我这里用的是webstorm10.0.3开发。

    启动服务器有两种方法,如果你也用的是webstorm。

      方法一:在cmd里输入

      

npm start

      方法二:在webstorm里的www文件里的任意位置单击右键,选择run ‘fileName’;

      

   测试服务器是否正常启动,在浏览器里输入localhost:3000

    

    到这里,我们的本地服务器就算是搭建完成了。

3:测试花生壳是否映射成功

  启动花生壳映射:这里注意,花生壳里的本地端口要和node服务器的端口一致!

  

  在浏览器里打开上图中“外网访问地址”!我们看到和在localhost:3000下访问的页面完全一样,这样就映射成功

  

 

4:公众号的接入配置:(在这里,你应该阅读一下微信开发者文档里的接入指南;地址:http://mp.weixin.qq.com/wiki/16/1e87586a83e0e121cc3e808014375b74.html

  1:打开公众号平台:

       点击“接口配置”

     URL:就是我们映射好的外网地址;

     token:就是我们和微信后台约定好的令牌;

     秘钥:随机生成;

     加密方式:可以选择明文模式,也可以选择兼容模式;

      注意:此时我们还不能提交,因为我们还没有验证代码的编写;这是验证要求;

      

  首先:我们这里用到了另一个npm包;所以我们先需要安装这个npm包,打开之前的cmd,进去我的微信目录里输入:

    npm install crypto

    

    打开weixin/routes/index.js;

      

    将里面的代码改为:

    切记,代码里的token要改为你自己的token

var express = require('express');
var crypto = require('crypto');
var router = express.Router();
 
var token = "你自己规定的token"; //此处需要你自己修改!
 
/* GET home page. */
router.get('/', function(req, res, next) {
 
    var signature = req.query.signature;
    var timestamp = req.query.timestamp;
    var nonce = req.query.nonce;
    var echostr = req.query.echostr;
 
    /*  加密/校验流程如下: */
    //1. 将token、timestamp、nonce三个参数进行字典序排序
    var array = new Array(token,timestamp,nonce);
    array.sort();
    var str = array.toString().replace(/,/g,"");
 
    //2. 将三个参数字符串拼接成一个字符串进行sha1加密
    var sha1Code = crypto.createHash("sha1");
    var code = sha1Code.update(str,'utf-8').digest("hex");
 
    //3. 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信
    if(code===signature){
        res.send(echostr)
    }else{
        res.send("error");
    }
});
module.exports = router;

     代码就改好了!现在开始接入:

    

  填好就可以提交了!如果提示url超时,就重新点击提交!

    此处可能出现的问题:

      1:如果多次提交还是超时,则将映射地址输入浏览器里直接打开,看能请求到不,如果看到页面显示一个error,则重新点击提交,如果一直加载,则是花生壳问题,关闭重新打开花生壳!

      2:如果提示token验证失败,则是代码问题,查看代码哪里有错误!修改错误后重新提交!

  

从此,我们就可以真的做微信开发了,查看文档,完成自己想完成的任务去吧!

@转载请注明出处!

目录
相关文章
|
28天前
|
JavaScript 前端开发 中间件
探索后端技术:Node.js与Express框架的完美融合
【10月更文挑战第7天】 在当今数字化时代,Web应用已成为日常生活不可或缺的一部分。本文将深入探讨后端技术的两大重要角色——Node.js和Express框架,分析它们如何通过其独特的特性和优势,为现代Web开发提供强大支持。我们将从Node.js的非阻塞I/O和事件驱动机制,到Express框架的简洁路由和中间件特性,全面解析它们的工作原理及应用场景。此外,本文还将分享一些实际开发中的小技巧,帮助你更有效地利用这些技术构建高效、可扩展的Web应用。无论你是刚入门的新手,还是经验丰富的开发者,相信这篇文章都能为你带来新的启发和思考。
|
1月前
|
开发框架 JavaScript 前端开发
使用 Node.js 和 Express 构建 Web 应用
【10月更文挑战第2天】使用 Node.js 和 Express 构建 Web 应用
|
7天前
|
JavaScript 中间件 关系型数据库
构建高效的后端服务:Node.js 与 Express 的实践指南
在后端开发领域,Node.js 与 Express 的组合因其轻量级和高效性而广受欢迎。本文将深入探讨如何利用这一组合构建高性能的后端服务。我们将从 Node.js 的事件驱动和非阻塞 I/O 模型出发,解释其如何优化网络请求处理。接着,通过 Express 框架的简洁 API,展示如何快速搭建 RESTful API。文章还将涉及中间件的使用,以及如何结合 MySQL 数据库进行数据操作。最后,我们将讨论性能优化技巧,包括异步编程模式和缓存策略,以确保服务的稳定性和扩展性。
|
14天前
|
Web App开发 JavaScript 中间件
构建高效后端服务:Node.js与Express框架的完美结合
【10月更文挑战第21天】本文将引导你走进Node.js和Express框架的世界,探索它们如何共同打造一个高效、可扩展的后端服务。通过深入浅出的解释和实际代码示例,我们将一起理解这一组合的魅力所在,并学习如何利用它们来构建现代Web应用。
38 1
|
2天前
|
Web App开发 JavaScript 前端开发
探索后端开发:Node.js与Express的完美结合
【10月更文挑战第33天】本文将带领读者深入了解Node.js和Express的强强联手,通过实际案例揭示它们如何简化后端开发流程,提升应用性能。我们将一起探索这两个技术的核心概念、优势以及它们如何共同作用于现代Web开发中。准备好,让我们一起开启这场技术之旅!
10 0
|
2天前
|
Web App开发 JavaScript 前端开发
构建高效后端服务:Node.js与Express框架的实践
【10月更文挑战第33天】在数字化时代的浪潮中,后端服务的效率和可靠性成为企业竞争的关键。本文将深入探讨如何利用Node.js和Express框架构建高效且易于维护的后端服务。通过实践案例和代码示例,我们将揭示这一组合如何简化开发流程、优化性能,并提升用户体验。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的见解和实用技巧。
|
4天前
|
Web App开发 JavaScript 中间件
构建高效后端服务:Node.js与Express框架的融合之道
【10月更文挑战第31天】在追求快速、灵活和高效的后端开发领域,Node.js与Express框架的结合如同咖啡遇见了奶油——完美融合。本文将带你探索这一组合如何让后端服务搭建变得既轻松又充满乐趣,同时确保你的应用能够以光速运行。
10 0
|
28天前
|
JSON JavaScript 前端开发
Node.js Express 框架
10月更文挑战第7天
27 2
|
1月前
|
JSON JavaScript 前端开发
使用 Node.js 和 Express 构建 RESTful API 服务器
【10月更文挑战第3天】使用 Node.js 和 Express 构建 RESTful API 服务器
|
1月前
|
JSON JavaScript 前端开发
使用 Node.js 和 Express 构建 RESTful API
【10月更文挑战第3天】 使用 Node.js 和 Express 构建 RESTful API