微信小程序访问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 相关文章推荐
推荐40个非常优秀的jQuery插件和教程【系列三】
Nov 09 Javascript
今天是星期几的4种JS代码写法
Sep 17 Javascript
jQuery+PHP实现可编辑表格字段内容并实时保存
Oct 09 Javascript
简单讲解jQuery中的子元素过滤选择器
Apr 18 Javascript
JS短信验证码倒计时功能的实现(没有验证码,只有倒计时)
Oct 27 Javascript
JS+html5 canvas实现的简单绘制折线图效果示例
Mar 13 Javascript
axios学习教程全攻略
Mar 26 Javascript
Vue实现动态响应数据变化
Apr 28 Javascript
Bootstrap滚动监听组件scrollspy.js使用方法详解
Jul 20 Javascript
JS Input里添加小图标的两种方法
Nov 11 Javascript
javascript实现评分功能
Jun 24 Javascript
JavaScript实现缓动动画
Nov 25 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微信支付通知的处理方式
2014/05/25 PHP
异步加载技术实现当滚动条到最底部的瀑布流效果
2014/09/16 PHP
php学习笔记之基础知识
2014/11/08 PHP
PHP字符串比较函数strcmp()和strcasecmp()使用总结
2014/11/19 PHP
Thinkphp 框架扩展之类库扩展操作详解
2020/04/23 PHP
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
2013/04/08 Javascript
子窗体与父窗体传值示例js代码
2013/08/01 Javascript
判断滚动条到底部的JS代码
2013/11/04 Javascript
理解Javascript的动态语言特性
2015/06/17 Javascript
JS实现黑色风格的网页TAB选项卡效果代码
2015/10/09 Javascript
基于JavaScript实现一定时间后去执行一个函数
2015/12/14 Javascript
JS获取一个未知DIV高度的方法
2016/08/09 Javascript
JS扩展类,克隆对象与混合类实例分析
2016/11/26 Javascript
jQuery validate 验证radio实例
2017/03/01 Javascript
利用express启动一个server服务的方法
2017/09/17 Javascript
基于vue.js中事件修饰符.self的用法(详解)
2018/02/23 Javascript
微信小程序自定义多选事件的实现代码
2018/05/17 Javascript
Vue触发隐藏input file的方法实例详解
2019/08/14 Javascript
Python发送Email方法实例
2014/08/21 Python
Python爬虫获取整个站点中的所有外部链接代码示例
2017/12/26 Python
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
python字符串切割:str.split()与re.split()的对比分析
2019/07/16 Python
解决使用export_graphviz可视化树报错的问题
2019/08/09 Python
Django使用rest_framework写出API
2020/05/21 Python
NFL官方在线商店:NFLShop
2020/07/29 全球购物
电厂职工自我鉴定
2014/02/20 职场文书
2014年五一促销活动方案
2014/03/09 职场文书
绿色城市实施方案
2014/03/19 职场文书
运动员获奖感言
2014/08/15 职场文书
2014年药剂科工作总结
2014/11/26 职场文书
2015年个人现实表现材料
2014/12/10 职场文书
内乡县衙导游词
2015/02/05 职场文书
公司人事任命通知
2015/04/20 职场文书
大学考试作弊检讨书
2015/05/06 职场文书
学校社团活动总结
2015/05/07 职场文书
《用字母表示数》教学反思
2016/02/17 职场文书