热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

基于angular4+express+wechat+svn+PM2实现微信公众号开发(二)

基于angular4+express+wechat+svn+PM2实现微信公众号开发(二)前面基本介绍了一些微信开发的准备工作。现在我们开始进行我们的代码开发现在我

基于angular4 + express + wechat + svn + PM2 实现微信公众号开发(二)

前面基本介绍了一些微信开发的准备工作。现在我们开始进行我们的代码开发

现在我们介绍接入微信服务器流程

  1. 第一步:打开微信公众平台文档(白说也得说)选择接入指南(推荐好好看下文档);

  2. 验证微信服务器

    新建一个 app,js 然后安装 express 后面按照上面步骤一步一步操作

    const express = require('express');
    const crypto = require('crypto');
    
    const app = express();
    app.get('/app', function(req, res) {
     const signature = req.query.signature;  // 微信服务器 get 的 signature 参数
     const timestamp = req.query.timestamp;  // 微信服务器 get 的 timestamp 参数
     const nOnce= req.query.nonce;          // 微信服务器 get 的 nonce 参数
     const echostr = req.query.echostr;      // 微信服务器 get 的 echostr 参数
     const token = "wenpeng";                // 自己定义的 token 值
    
    //1)将token、timestamp、nonce三个参数进行字典序排序
     const arr = [token, timestamp, nonce].sort();
    
    
    //2)将三个参数字符串拼接成一个字符串进行sha1加密
     const str = arr.join('');
     const jiami = crypto.createHash("sha1").update(str,'utf-8').digest("hex");
     console.log(echostr + '---' + jiami);
    //3)开发者获得加密后的字符串可与signature对比,标识该请求来源于微信
     if(jiami === signature){
         res.end(echostr);
     }
    })
    app.listen(80);
    1. 将代码提交到 svn 中。(之前已经配置了SVN post-commit钩子使用PM2搭建的服务器的热启动--- 所以 提交后直接就会自动启动了。不知道的 可以看我之前的几个博客)
    2. 配置测试账号接口配置信息

  1. 配置好后直接点击验证

    1. 配置成功

好了 本篇文章介绍了 微信的服务器验证。有没有很麻烦 不用担心 这只是为了给你们讲一下验证的流程 下个博客 会使用别人造好的轮子 直接开始 微信的开发 好了 谢谢大家的支持


推荐阅读
  • 使用nodejs爬取b站番剧数据,计算最佳追番推荐
    本文介绍了如何使用nodejs爬取b站番剧数据,并通过计算得出最佳追番推荐。通过调用相关接口获取番剧数据和评分数据,以及使用相应的算法进行计算。该方法可以帮助用户找到适合自己的番剧进行观看。 ... [详细]
  • web.py开发web 第八章 Formalchemy 服务端验证方法
    本文介绍了在web.py开发中使用Formalchemy进行服务端表单数据验证的方法。以User表单为例,详细说明了对各字段的验证要求,包括必填、长度限制、唯一性等。同时介绍了如何自定义验证方法来实现验证唯一性和两个密码是否相等的功能。该文提供了相关代码示例。 ... [详细]
  • 本文记录了在vue cli 3.x中移除console的一些采坑经验,通过使用uglifyjs-webpack-plugin插件,在vue.config.js中进行相关配置,包括设置minimizer、UglifyJsPlugin和compress等参数,最终成功移除了console。同时,还包括了一些可能出现的报错情况和解决方法。 ... [详细]
  • VueCLI多页分目录打包的步骤记录
    本文介绍了使用VueCLI进行多页分目录打包的步骤,包括页面目录结构、安装依赖、获取Vue CLI需要的多页对象等内容。同时还提供了自定义不同模块页面标题的方法。 ... [详细]
  • 超级简单加解密工具的方案和功能
    本文介绍了一个超级简单的加解密工具的方案和功能。该工具可以读取文件头,并根据特定长度进行加密,加密后将加密部分写入源文件。同时,该工具也支持解密操作。加密和解密过程是可逆的。本文还提到了一些相关的功能和使用方法,并给出了Python代码示例。 ... [详细]
  • 安装oracle软件1创建用户组、用户和目录bjdb节点下:[rootnode1]#groupadd-g200oinstall[rootnode1]#groupad ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • node.jsrequire和ES6导入导出的区别原 ... [详细]
  • 本文讨论了在使用PHP cURL发送POST请求时,请求体在node.js中没有定义的问题。作者尝试了多种解决方案,但仍然无法解决该问题。同时提供了当前PHP代码示例。 ... [详细]
  • Python的参数解析argparse模块的学习
    本文介绍了Python中参数解析的重要模块argparse的学习内容。包括位置参数和可选参数的定义和使用方式,以及add_argument()函数的详细参数关键字解释。同时还介绍了命令行参数的操作和可接受数量的设置,其中包括整数类型的参数。通过学习本文内容,可以更好地理解和使用argparse模块进行参数解析。 ... [详细]
  • Python项目实战10.2:MySQL读写分离性能优化
    本文介绍了在Python项目实战中进行MySQL读写分离的性能优化,包括主从同步的配置和Django实现,以及在两台centos 7系统上安装和配置MySQL的步骤。同时还介绍了创建从数据库的用户和权限的方法。摘要长度为176字。 ... [详细]
  • 很多时候在注册一些比较重要的帐号,或者使用一些比较重要的接口的时候,需要使用到随机字符串,为了方便,我们设计这个脚本需要注意 ... [详细]
  • 基于分布式锁的防止重复请求解决方案
    一、前言关于重复请求,指的是我们服务端接收到很短的时间内的多个相同内容的重复请求。而这样的重复请求如果是幂等的(每次请求的结果都相同,如查 ... [详细]
  • 1找现有的镜像dockerhub上搜索到一个,其在github上公布了镜像构建的dockerfile,并且支持http和svn两种协议,就这个吧。https:github.come ... [详细]
  • SVN自动化正文共:5007 字预计阅读时间: 13 分钟平时自己多用Git来做版本控制,但很多公司内部依旧使用SVN,核心原因其实就是SVN够用了,懒得换,虽然自己用git,但对 ... [详细]
author-avatar
fjy69
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有