微信小程序访问node.js接口服务器搭建教程


Posted in Javascript onApril 25, 2017

前言

最近在做微信的应用号小程序开发,小程序的后台数据接口需要https安全请求,所以需要我的nodejs服务器能够提供https的支持,现在就将整个https服务器的搭建过程说一下。

搭建教程如下:

首先,我试了一下以前的过期的证书,在开发者工具里模拟的时候可以正常访问接口,在手机里测试时候微信小程序的wx.request是会报SSL握手失败的错误(request error : request: fail ssl hand shake error),所以只能重新申请一个证书,这里推荐使用阿里云的赛门铁克 SSL/TLS 证书,是微信支持的,可以免费申请使用一年。

微信小程序访问node.js接口服务器搭建教程
赛门铁克SSL证书申请

申请完之后审核周期一般在1~3天,就可以下载证书文件,我们选择其他类别的证书

微信小程序访问node.js接口服务器搭建教程

解压出来之后的目录如下图,我们需要用到的文件为第一二个文件,也就是我们的私有秘钥文件。

微信小程序访问node.js接口服务器搭建教程

然后需要搭建我们的https服务器,这里用到的是nodejs自带的https模块

var https = require('https')
 ,fs = require("fs");

var express = require('express');
var app = express();

var options = {
 key: fs.readFileSync('./213988289600767.key'),
 cert: fs.readFileSync('./213988289600767.pem')
};

https.createServer(options, app).listen(8081, function () {
 console.log('Https server listening on port ' + 8081);
});

这时候要注意:微信的小程序只支持不带端口的域名接口,不支持IP地址和接口,所以我们需要映射到80端口并绑定备案过的域名才能被微信小程序访问到。

最后我们就可以通过wx.request方法来访问我们的nodejs服务器接口了。

微信小程序访问node.js接口服务器搭建教程
真机调试模式下打印接口数据

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
尽可能写"友好"的"Javascript"代码
Jan 09 Javascript
JavaScript触发器详解
Mar 10 Javascript
JQuery1.6 使用方法三
Nov 23 Javascript
js QQ客服悬浮效果实现代码
Dec 12 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
Jan 13 Javascript
第二次聊一聊JS require.js模块化工具的基础知识
Apr 17 Javascript
jQuery增加、删除及修改select option的方法
Aug 19 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的方法
Nov 29 Javascript
JS实现的表头列头固定页面功能示例
Jan 10 Javascript
vue.js选中动态绑定的radio的指定项
Jun 02 Javascript
详解单页面路由工程使用微信分享及二次分享解决方案
Feb 22 Javascript
angular2 NgModel模块的具体使用方法
Apr 10 Javascript
微信小程序中显示html格式内容的方法
Apr 25 #Javascript
详谈Angular 2+ 的表单(一)之模板驱动型表单
Apr 25 #Javascript
详解Vue 动态添加模板的几种方法
Apr 25 #Javascript
详解vue-cli + webpack 多页面实例应用
Apr 25 #Javascript
基于Vue实现timepicker
Apr 25 #Javascript
VueJS如何引入css或者less文件的一些坑
Apr 25 #Javascript
详解Angular 4.x 动态创建组件
Apr 25 #Javascript
You might like
PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)
2012/07/15 PHP
ThinkPHP标签制作教程
2014/07/10 PHP
PHP中返回引用类型的方法
2015/04/03 PHP
PHP中抽象类和抽象方法概念与用法分析
2016/05/24 PHP
PHP二维数组矩形转置实例
2016/07/20 PHP
JS 日期验证正则附asp日期格式化函数
2009/09/11 Javascript
深入理解JavaScript系列(8) S.O.L.I.D五大原则之里氏替换原则LSP
2012/01/15 Javascript
基于JQuery的多标签实现代码
2012/09/19 Javascript
Jquery中给animation加更多的运作效果实例
2013/09/05 Javascript
浅谈javascript面向对象程序设计
2015/01/21 Javascript
jQuery可见性过滤器:hidden和:visibility用法实例
2015/06/24 Javascript
javascript学习指南之回调问题
2016/04/23 Javascript
JavaScript鼠标特效大全
2016/09/13 Javascript
基于JavaScript实现窗口拖动效果
2017/01/18 Javascript
node.js爬虫爬取拉勾网职位信息
2017/03/14 Javascript
Express + Node.js实现登录拦截器的实例代码
2017/07/01 Javascript
收藏AngularJS中最重要的核心功能
2017/07/09 Javascript
浅谈JS中的反柯里化( uncurrying)
2017/08/17 Javascript
详解JSON Web Token 入门教程
2018/07/30 Javascript
vue2.0 中使用transition实现动画效果使用心得
2018/08/13 Javascript
Vue列表渲染的示例代码
2018/11/01 Javascript
vuejs2.0运用原生js实现简单拖拽元素功能
2020/08/21 Javascript
Vue实现数据请求拦截
2019/10/23 Javascript
es6中Promise 对象基本功能与用法实例分析
2020/02/23 Javascript
vue使用vant中的checkbox实现全选功能
2020/11/17 Vue.js
浅要分析Python程序与C程序的结合使用
2015/04/07 Python
python实现批量解析邮件并下载附件
2018/06/19 Python
pycharm使用matplotlib.pyplot不显示图形的解决方法
2018/10/28 Python
使用python爬取微博数据打造一颗“心”
2019/06/28 Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
2020/01/16 Python
python实现ftp文件传输系统(案例分析)
2020/03/20 Python
CSS3实现大小不一的粒子旋转加载动画
2016/04/21 HTML / CSS
美国主要的特色咖啡和茶公司:Peet’s Coffee
2020/02/14 全球购物
请解释一下webService? 如何用.net实现webService
2014/06/09 面试题
软件测试工程师结构化面试题库
2016/11/23 面试题
努力学习演讲稿
2014/05/10 职场文书