微信小游戏nodejs后端开发

本文详细介绍了如何使用Node.js进行微信小游戏的后端开发,包括Node.js的安装与初步使用,利用mkcert生成本地受信任的SSL证书,以及如何用Node.js构建支持HTTPS的本地服务器。此外,还讲解了通过Cpolar实现内网穿透,使得本地服务器可以被外网访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、安装及使用node.js

1、安装

  1. 进入 node.js官网根据不同平台系统选择你需要的 Node.js 安装包。我是Windows,因此直接下载.msi可安装文件即可。
    在这里插入图片描述
  2. 下载完成后,双击运行安装程序。
    1)点击下一步即可
    在这里插入图片描述
    2)勾选接受协议后,继续点击下一步
    在这里插入图片描述
    3)选择你需要安装的目的文件夹后点击下一步
    在这里插入图片描述
    4)选择你需要的安装模式,一般是默认的即可,然后下一步
    在这里插入图片描述
    5)最后点击安装即可
    在这里插入图片描述
  3. 检测是否安装成功
    键盘按下win+R键打开运行,输入cmd,输入node --version,若显示node.js的版本,则表示安装成功

2、初步使用node.js

  1. 运行第一个程序
    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证书
这里我就讲讲我跟着这篇教程踩过的一些小坑:

  1. 一定要使用cmd来执行这些命令,用powershell执行不了
  2. 这个步骤中的每一步都不要漏掉,在签发本地访问的证书时,可以再加上所在局域网中的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);
});

文件详情如下
在这里插入图片描述
浏览器中访问结果如下:

  1. 访问:http://127.0.0.1:8000/
    在这里插入图片描述
  2. 访问:https://127.0.0.1:8001/
    在这里插入图片描述
  3. 控制台运行情况:
    在这里插入图片描述

2、使用内网穿透工具Cpolar实现外网访问本地服务器

安装及使用教程参见链接:cpolar使用教程
需要注意的是: 需要绑定的内网ip是你本地服务器所在局域网的ip地址。
绑定完成就能通过生成的域名来访问本地服务器了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值