温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Node.js如何搭建小程序后台服务

发布时间:2021-05-31 14:00:27 来源:亿速云 阅读:304 作者:小新 栏目:web开发

这篇文章主要介绍了Node.js如何搭建小程序后台服务,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

准备条件

一台服务器

SSL证书,小程序规定必须要https协议

服务器后台

Node.js
express
mongodb
pm2

下面以腾讯云主机(centos)为例

安装Node.js

yum install nodejs

也可以安装nvm,用nvm管理nodejs版本

安装git

yum install git

连接到远程代码库

以github为例:

配置用户信息

git config --global user.name youname
git config --global user.email youemail

生成ssh公钥

ssh -keygen -t rsa -C youemail

默认生成目录为 /root/.ssh
在目录中找到id_rsa.pub文件,复制里面的内容,在自己的github上添加ssh

安装mongodb和客户端shell

yum install mongodb-server mongodb -y

创建数据库文件存放目录

mkdir -p /data/mongodb
mkdir -p /data/logs/mongodb

启动mongodb数据库服务

mongod --fork --dbpath /data/mongodb --logpath /data/logs/youlog.log

注意:
如果在启动mongodb服务时在命令后面加上 --auth即会开启认证。
建议开启认证,如果不开会很容易被黑。

--port 12345可以改变数据库的端口号,默认是27017。

--fork是以守护进程的方式启动数据库服务。

--dbpath /data/mongodb 指定数据库文件存放的目录。

--logpath /data/logs/youlog.log 指定日志文件目录。

mongodb的配置文件默认在 /etc/mongod.conf

启动客户端shell

mongo  //启动mongodb客户端shell 默认连接test数据库

在shell里可以切换数据库连接,和进行相关操作。

云服务器以守护进程的方式启动一次数据库服务之后,关闭终端,服务也不会被终止。所以下次不用再启动数据库服务,直接连接就可以。

关闭数据库服务

mongod --shutdown (--dbpath /data/mongodb)

如果启动时加了dbpath而且不是默认的/data/db ,则关闭数据库服务时也应加上dbpath。

创建https服务

npm init  //项目初始化

安装express

npm install express --save

实现简单的https服务器

const https = require('https');
const fs = require('fs');
const express = require('express');
const app = express();

let key = fs.readFileSync('youssl.key');
let cert = fs.readFileSync('youssl.crt');

let options = {
  key : key,
  cert : cert
};

const httpsServer = https.createServer(options,app);
httpsServer.listen(443, () => {
  console.log('listening 443 port');
});

app.get('/',(req, res, next) => {
  console.log('someone request');
});

.key和.cert文件为你的ssl认证文件,以腾讯云主机为例,可以有免费1年的ssl证书。

使用mongoose操作数据库

npm install mongoose --save
const mongoose = require('mongoose');
mongoose.connect('mongodb://127.0.0.1/dbname'); //连接数据库

const connection = mongoose.connection;
connection.once('open', (err) => {
  if(err){
    console.log('Database connection failure');
  }else{
    console.log('Database opened');
  }
});

const Schema = mongoose.Schema;

const YourSchema = new Schema({
  name : String,
  age : Number,
});

const yourModel = mongoose.model('yourtable', YourSchema); //在数据库中对应的表为yourtables

let yourDoc = new yourModel({
  name : 'yourname',
  age : 18,
});

注意 如果启动mongodb数据库服务时加上了--auth 则使用mongoose连接数据库时,要加上认证的账户

mongoose.connect('mongodb://youraccount:pwd@127.0.0.1/dbname');

mongodb与关系型数据库的对应关系

Schema相当于表的结构,可以预定义文档的字段类型,不能进行数据库操作。 Modle可以进行一系列数据库操作,相当于表。Model的实例就相当于表的一行。

使用pm2

安装pm2

npm install  -g pm2

启动应用

pm2 start app.js

感谢你能够认真阅读完这篇文章,希望小编分享的“Node.js如何搭建小程序后台服务”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI