微信小游戏后端开发
一、安装及使用node.js
1、安装
- 进入 node.js官网根据不同平台系统选择你需要的 Node.js 安装包。我是Windows,因此直接下载.msi可安装文件即可。
- 下载完成后,双击运行安装程序。
1)点击下一步即可
2)勾选接受协议后,继续点击下一步
3)选择你需要安装的目的文件夹后点击下一步
4)选择你需要的安装模式,一般是默认的即可,然后下一步
5)最后点击安装即可
- 检测是否安装成功
键盘按下win+R键打开运行,输入cmd,输入node --version,若显示node.js的版本,则表示安装成功
2、初步使用node.js
- 运行第一个程序
1)随便在一个位置新建文件夹,我直接在桌面建一个文件夹
2)然后新建第一个js文件
3)输入以下代码
4)然后在本文件夹下按shift+鼠标右键,打开powershell窗口,运行该程序。
2、使用npm安装所需模块
1)查看npm版本
2)由于我是使用express框架来搭建服务器,因此只需要执行一下命令安装该框架需要用到的模块就行
npm install express --save
npm install body-parser --save
npm install cookie-parser --save
npm install multer --save
npm install fs --save
npm的具体使用方法,参见链接: 菜鸟教程-npm使用教程 和 菜鸟教程-express框架介绍
二、安装mkcert,生成受信任的本地SSL证书
1、下载mkcert
mkcert的下载链接: https://github.com/FiloSottile/mkcert/releases
这个需要访问GitHub,可能登录不上去。可以去csdn的下载资源中找。下载好后可以直接在cmd中以命令的形式使用。
2、使用mkcert工具
具体使用方法参见这篇博客: 使用mkcert工具生成受信任的本地SSL证书
这里我就讲讲我跟着这篇教程踩过的一些小坑:
- 一定要使用cmd来执行这些命令,用powershell执行不了
- 这个步骤中的每一步都不要漏掉,在签发本地访问的证书时,可以再加上所在局域网中的ip地址。
三、使用node.js来构建本地服务器
1、构建http服务器以及使用SSL证书构建https服务器
如未安装express和fs,请先执行:
npm install express --save
npm install fs --save
以下是服务器代码:
const express = require('express');
const fs = require("fs");
var app = express();
const https = require("https");
const http = require("http");
var cerdent = { //启用https服务的证书文件
key: fs.readFileSync('localhost+3-key.pem'),
cert: fs.readFileSync('localhost+3.pem')
};
const SSLPORT = 8001; //设置HTTPS的访问端口号
const PORT = 8000; //设置HTTP的访问端口号
var httpServer = http.createServer(app); //创建HTTP服务器
var httpsServer = https.createServer(cerdent, app); //创建HTTPS服务器
//开启http和https的监听
httpServer.listen(PORT, function(){
console.log("http服务器正在监听", PORT, "端口");
});
httpsServer.listen(SSLPORT, function(){
console.log("https服务器正在监听", SSLPORT, "端口");
});
//客户端POST的路由解析
app.post("/", function(req, res){
res.send("POST 请求成功!请求协议为:"+req.protocol);
if(req.protocol === 'https'){
console.log("客户端发起https的POST请求");
}
else{
console.log("客户端发起http的POST请求");
}
});
//处理GET请求
app.get('/', function(req, res){
console.log("GET 请求!");
console.log("协议:", req.protocol);
res.send("GET 请求成功!请求协议为:"+req.protocol);
});
文件详情如下
浏览器中访问结果如下:
- 访问:http://127.0.0.1:8000/
- 访问:https://127.0.0.1:8001/
- 控制台运行情况:
2、使用内网穿透工具Cpolar实现外网访问本地服务器
安装及使用教程参见链接:cpolar使用教程
需要注意的是: 需要绑定的内网ip是你本地服务器所在局域网的ip地址。
绑定完成就能通过生成的域名来访问本地服务器了。