位置: 编程技术 - 正文

Node.js开发第三方微信公众平台(node.js web开发)

编辑:rootadmin

推荐整理分享Node.js开发第三方微信公众平台(node.js web开发),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs第三方模块,nodejs开发gui,nodejs第三方模块,node.js开发实战,node js 开发,node.js开发实战,node.js开发实战,node js 开发,内容如对您有帮助,希望把文章链接给更多的朋友!

一、写在前面的话

&#;&#;Node.js是一个开放源代码、跨平台的JavaScript语言运行环境,采用Google开发的V8运行代码,使用事件驱动、非阻塞和异步输入输出模型等技术来提高性能,可优化应用程序的传输量和规模。这些技术通常用于数据密集的事实应用程序。——来自维基百科

&#;&#;最近花了差不多近一个月的时间去学习Node.js,由于它的代码语言是 Javascript ,因此对于语法上就没有过多的去研究,毕竟做过Web开发的程序员,很少有不会Javascript的。而写这篇文章,也只是为了

如有不正确的地方,希望大家指正。

二、准备工作

&#;&#;在正式开始码代码之前,我们需要准备以下东西:

搭建 Node 环境。Node的安装过程太过简单,网上也有太多的教程,大家可以自行百度;申请微信公众号,同样这里也不做介绍,大家自行百度。服务器和域名。打开Node.js中文网文档 打开 微信开发者文档 三、接入微信公众平台 1.创建Node.js 项目

&#;&#;首先我们在电脑的任意磁盘上创建文件夹,命名随意,我这命名为 wechat;

&#;&#;随后在文件夹中创建两个文件,一个是config.json,另一个为app.js。如下图所示:

PS:这里我的 IDE 是 VSCode,各位可随意使用自己喜欢的 IDE。

&#;&#;为了后续功能的扩展,我加入了Express框架,具体操作如下:

电脑打开运行界面,快捷键为:win+R,输入cmd后回车,进入dos界面,输入命令

进行全局安装;由于 Express 自 4.x 版本中将命令工具分离出来,因此还需要输入下一个命令

安装成功后,在dos界面中输入以下 命令

结果如下图所示:

什么?你的运行结果提示:express不是内部或外部命令。那你必须要检查一下安装 node.js 的时候有没有添加环境变量。点击<a href=" target="_blank">解决express不是内部或外部命令问题

2.微信文档步骤

&#;&#;如果在没有考虑清楚之前,就开始码代码的话,这样做是非常危险的。我们先打开微信文档,点击 开始开发 中的 接入指南,如图:

跳过第一步,直接看第二步,如图:

正如帮助文档所说的那样,我们总结以四个步骤:

获取微信服务器Get请求的参数 signature、timestamp、nonce、echostr 将token、timestamp、nonce三个参数进行字典序排序将三个参数字符串拼接成一个字符串进行sha1加密开发者获得加密后的字符串可与signature对比,标识该请求来源于微信 3.接入功能的实现

&#;&#; 整理好思路后我们就按照上一节的步骤去实现。首先我们在打开 config.json 文件,输入以下内容:

&#;&#; config.json 文件是我们程序的配置文件,在后面的文章中,我们会将程序名称、微信定义的参数名称、请求地址等配置内容存放在该文件中。

&#;&#; 打开 app.js 文件,该文件属于我们程序的入口,在文件启动及以后路由配置都是再次实现的,首先我们导入重要的模块:

上面的代码不难理解,require 就是导入模块的意思。这里主要针对我们自定义的config.json文件讲解一下:&#;"./" 表示与 app.js 在同一及目录下,为什么要这么写呢?原因很简单就是在我们通过 npm 命令安装模块时,如果我们指定了全局安装,也就是 -g,安装后的文件则会保存在我们 node.js 安装路径下的 node_modules 文件夹中;同理,我们不指定全局安装,安装后的文件则会保存在我们安装命令输入时所在的文件夹根目录下的 node_modules 文件夹中,此时如果没有该文件,系统会自动创建。

&#;这里我们都是使用 require 去导入模块的,node.js 怎么分辨系统模块和我们自定义的模块呢,聪明的你一定想到了,没错就是 "./" 这个,如果你不想用它的话,你也可以把自定义的模块文件移到 node_modules 文件夹中。

Node.js开发第三方微信公众平台(node.js web开发)

&#;require 是通过模块名称去导入模块文件的,因此在引入的时候不需要写入文件的后缀名。如果两个文件重名,但后缀名不同, require 会按照 Node.js 的加载优先级顺序进行导入,即 js文件 > json文件 > node文件。

&#;实际上就是这么简单,我们也就不再纠结这个问题,继续下面的工作。

&#;&#; 实例 express 以及 创建服务器

&#;&#;上面的代码通过注释,我们就能明白其意思,这里我就不再做细致的讲解。再次进入 dos 界面,通过命令进入我们项目的文件的根目录下,如图:

输入命令,启动我们的Node.js项目

启动成功后,我们打开浏览器输入地址: 访问我们的node.js项目,如图

小技巧 :

&#;&#;在每次更改完 node.js 项目后,我们都需要先将 node.js停止(快捷键: Ctrl+C),然后再通过命令再次运行,这样特别麻烦。这里我推荐使用 supervisor 工具,npm 安装命令为:npm install -g supervisor。这样我们启动 node.js 项目命令改为 supervisor app.js,更改项目后只需要保存,刷新浏览器页面就可以得到更改后的结果了。

&#;&#;完成上面的工作后,我们就可以正式开始写接入微信公众平台的主要代码,废话不多说直接贴代码

4.部署项目

&#;&#; 完成了代码后我们就可以把项目发布到外网上了,这里我用的是花生壳内网映射外网的软件,各位可以随意使用其他工具。

1.打开花生壳的软件,点击内网穿透:

2.点击添加映射

3.配置映射

&#;&#;由于微信只接受端口,我们在映射类型选择为 网站端口;内网主机就是我们电脑的 IP 地址;内网端口号就是node.js的监听端口;点击确定后,就成功映射到外网了,可以通过花生壳提供的域名进行访问。

5.接入验证

&#;&#;再次进入微信公众平台在左侧菜单点击基本配置,如图:

点击修改配置。其中服务器地址,就是我们外网映射的地址;令牌(Token)就是我们在 config.json 文件中 定义的 token 值;消息加密可以点击随机生成按钮,当然你也可以随便定义;消息加解密方式这块可以随便选择,这里我就使用默认的,如图:

&#;&#;点击提交按钮,提示 提交成功,那么我就要祝贺你了

你已经成功的步入了Node.js开发微信的开发的第一步。

&#;&#; GITHUB源代码: 。对文章有不正确之处,请给予纠正。github源代码请顺手给个 Star,最后感谢您的阅读。

详解Nodejs之静态资源处理 前言刚开始用Nodejs写简单的web服务器的时候,总是感觉少了点什么。原来,我一直是在页面上输出什么HelloWorld!啊,ItWorks.之类的了。还确实没有处理

Node.js连接mongodb实例代码 前面介绍了node.js操作mysql以及redis的内容,这里继续学习操作mongodb的内容。安装驱动安装命令cnpminstallmongodb安装成功数据库操作因为mongodb是文档类型的

ajax +NodeJS 实现图片上传实例 前台用jquery的ajax发请求,后台用NodeJS的multer模块实现图片上传。这个demo给我的感悟是一定要自己能实现出来,而不是看了别人写好就直接拿来用note(注

标签: node.js web开发

本文链接地址:https://www.jiuchutong.com/biancheng/380834.html 转载请保留说明!

上一篇:nodejs集成sqlite使用示例

下一篇:详解Nodejs之静态资源处理(nodejs 静态页面)

  • 当期所得税计入什么科目
  • 处置投资性房地产对损益的影响
  • 银行存款出现负数算不算违规
  • 会计记账凭证如何填制
  • 红字发票重复提交了数据该怎么处理
  • 存货的领用
  • 收到投资款的会计科目
  • 给客户多开了发票,下月少开可以吗?
  • 未开具发票负数的原因
  • 增值税一般纳税人证明怎么查询
  • 进行利润分配时必须遵循的原则
  • 高新企业研发费用占比要求
  • 结转损益后损益类科目为0吗
  • 购房40%税款第二年抵扣如何做账
  • 小规模增值税普通发票税率
  • 生产企业出口退税流程怎么操作
  • 企业什么税可以退
  • 没收入就没附加税么?
  • 小规模820如何填写申报表?
  • 托儿所幼儿园卫生保健工作规范2022
  • 电子税务局实名采集怎么弄
  • 预缴所得税会计分录怎么做
  • 加工费计入什么费用
  • 坏账的计提和发生分录
  • 农产品增值税免税政策
  • 企业的免税收入用于支出所形成的费用或财产
  • 外账缺成本费用怎么处理
  • 企业开票信息可以改吗
  • RSync文件备份同步 Linux服务器rsync同步配置图文教程
  • 工业企业增值税负率一般控制在多少
  • 单位租房的房租怎么入账
  • 其他业务成本属于成本类吗
  • 苹果手机删除的备忘录怎么恢复
  • TypeError: Cannot read properties of undefined (reading ‘NAME‘)报错解决
  • PHP:iconv_strpos()的用法_iconv函数
  • 白沙国家公园中标公告
  • 企业预付工程车租赁费
  • 阿巴拉契亚国家步道的英文怎么说
  • PHP:imageloadfont()的用法_GD库图像处理函数
  • 退休后工作单位填什么内容
  • 公民什么情况纳税
  • 高德地图api是什么意思
  • Vue3通透教程【三】Vue3代码初体验找不同
  • vue父子组件传值
  • 理财产品利息计算方法
  • 什么叫误餐费
  • 利润表年报本期金额填什么
  • 工资走公账和私账哪个好
  • 安装sql2005提示sql server服务无法启动
  • 医疗费用属于什么费用
  • 年应税销售额是指纳税人在连续不超过12个月或四个季度
  • 计提地税会计分录怎么做
  • 项目费用有哪些
  • 主营业务收入可以进一般户吗
  • 房屋租赁产生的税费叫什么
  • 公司里的废品的处理一般是谁负责
  • 会计准则应收账款计提坏账
  • 应付账款用什么方法清查
  • 外帐和内帐区别
  • 智能abc不能输入汉字
  • ubuntu18.04更新到20.04
  • 新装的ubuntu18没有网络
  • mac电脑虚拟机怎么安装
  • mac打开safari快捷键
  • linux ifcon
  • virtualbox虚拟机
  • wan 微型端口
  • 进程出现很多regsvr32
  • WinXP老显示器CRT显示器严重闪屏的修复方法
  • Win10预览版镜像
  • socket restful
  • 收集linux日志
  • python的opencv
  • 英特尔在哪打开
  • android环境搭建实验报告
  • javascript位置属性
  • python字典常用操作以及字典的嵌套
  • 欠款抵押房产可以直接过户吗
  • 软件著作权可以转让公司吗
  • 改革的财税制度是什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设