摘要:搭建后臺(tái)的全過程近期基于搭建前端項(xiàng)目,搭建后臺(tái),遇到了不少問題,總結(jié)博客如下,有什么不正確的地方,請大家批評(píng)指正是非關(guān)系型數(shù)據(jù)庫。是用來啟動(dòng)的,是的命令行客戶端。
Node + mongoDB 搭建后臺(tái)的全過程
近期基于 vue-cil 搭建前端項(xiàng)目, express + mongoose 搭建后臺(tái),遇到了不少問題,總結(jié)博客如下,有什么不正確的地方,請大家批評(píng)指正^?_?^!
mongodb 是 NoSQL 非關(guān)系型數(shù)據(jù)庫。 mongoose是 mongodb 的一個(gè)對(duì)象模型工具,是基于 node-mongodb-native 開發(fā)的 mongodb 的 nodejs 驅(qū)動(dòng),可以在異步的環(huán)境下執(zhí)行。同時(shí)它也是針對(duì) mongodb 操作的一個(gè)對(duì)象模型庫,封裝了 mongodb 對(duì)文檔的一些增刪改查等常用方法,讓nodejs操作 mongodb 數(shù)據(jù)庫變得更加容易。一、Mac下mongodb的安裝與配置
1、 安裝mongodb:
brew install mongodb
2、安裝成功之后,啟動(dòng) mongodb
mongod
3、執(zhí)行 mongod ,啟動(dòng) mongodb 失敗,顯示如下:
原因 : 啟動(dòng) mongodb 之前,要先新建一個(gè)mongodb默認(rèn)的數(shù)據(jù)寫入目錄:
sudo mkdir -p /data/db
給剛才新建的數(shù)據(jù)庫目錄賦予權(quán)限
sudo chown -R 用戶名 /data
如下圖所示:
4、再次啟動(dòng)
mongod
5、若啟動(dòng)成功,可以通過http訪問該數(shù)據(jù)庫,mongodb使用了27017端口,因此在瀏覽器中打開 http://localhost:27017
出現(xiàn)如下圖所示提示,即說明連接成功。默認(rèn)的情況下,關(guān)閉shell,mongodb就停止運(yùn)行了 如果想在后臺(tái)運(yùn)行,啟動(dòng)時(shí)只需添加 --fork函數(shù)即可
小結(jié):
mongod 是用來連接到mongodb數(shù)據(jù)庫服務(wù)器的,即服務(wù)器端。 mongo 是用來啟動(dòng)MongoDB shell的,是mongodb的命令行客戶端。二、安裝 MongoDB可視化工具 RoboMongo
下載地址:https://robomongo.org/download
三、連接數(shù)據(jù)庫dbase.js
let mongoose = require("mongoose"); /** * 連接 */ mongoose.connect("mongodb://127.0.0.1:27017/learning",{useNewUrlParser: true}); /** * 連接成功 */ mongoose.connection.on("connected", function () { console.log("Mongoose connection succuss" ); }); /** * 連接異常 */ mongoose.connection.on("error",function (err) { console.log("Mongoose connection error: " + err); }); /** * 連接斷開 */ mongoose.connection.on("disconnected", function () { console.log("Mongoose connection disconnected"); }); module.exports = mongoose;四、啟動(dòng) node 服務(wù)
server.js
const fs = require("fs") const path = require("path") const express = require("express") const session = require("express-session") const bodyParser = require("body-parser") const app = express() require("./dbase") app.use(bodyParser.json()) //解析json類型的請求體 app.get("*", function (req, res) { res.sendFile(path.join(__dirname, "../Learning/index.html")); }) app.listen(process.env.PORT || 8000, function () { console.log("Listen port:8000...") });
小結(jié):
問題: 啟動(dòng)node服務(wù)連接數(shù)據(jù)庫時(shí),報(bào)錯(cuò)如下圖所示:
解決辦法:在 mongoose 5.x 版本中,連接數(shù)據(jù)庫時(shí),不再使用 {useMongoClient: true}),而是 { useNewUrlParser: true }
五、 vue-cil 搭建的項(xiàng)目跨域問題Vue-cli 創(chuàng)建的項(xiàng)目,可以直接利用 Node.js 代理服務(wù)器,通過修改proxyTable接口實(shí)現(xiàn)跨域請求。在vue-cli項(xiàng)目中的config文件夾下的index.js配置文件中,修改 dev 里面的proxyTable: {}項(xiàng),如下所示:
proxyTable: { "/api": { //代理地址 target: "http://127.0.0.1:8000/", //需要代理的地址 changeOrigin: true, //是否跨域 secure: false, pathRewrite: { "^/api": "/" //本身的接口地址沒有 "/api" 這種通用前綴,所以要rewrite,如果本身有則去掉 } } }
重啟項(xiàng)目npm run dev ,接口前加上“/api”即可實(shí)現(xiàn)跨域請求
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/19346.html
摘要:利用中間件實(shí)現(xiàn)異步請求,實(shí)現(xiàn)兩個(gè)用戶角色實(shí)時(shí)通信。目前還未深入了解的一些概念。往后會(huì)寫更多的前后臺(tái)聯(lián)通的項(xiàng)目。刪除分組會(huì)連同組內(nèi)的所有圖片一起刪除。算是對(duì)自己上次用寫后臺(tái)的一個(gè)強(qiáng)化,項(xiàng)目文章在這里。后來一直沒動(dòng),前些日子才把后續(xù)的完善。 歡迎訪問我的個(gè)人網(wǎng)站:http://www.neroht.com/? 剛學(xué)vue和react時(shí),利用業(yè)余時(shí)間寫的關(guān)于這兩個(gè)框架的訓(xùn)練,都相對(duì)簡單,有的...
摘要:文件這個(gè)是項(xiàng)目的入口文件,這邊有著項(xiàng)目的一下配置,也在此整合了項(xiàng)目的模塊,其中要注意的就是里面關(guān)于路由模塊的配置了。后面要再想加其他路由模塊的時(shí)候,就按照上面先引入路由模塊,再用設(shè)置好地址,后面就可以用了。 前言 想必很多小伙伴開始學(xué) node 的時(shí)候想搞個(gè)項(xiàng)目出來卻不知道怎么下手吧,這個(gè)教程的話就是教大家用 express 框架簡單粗暴搭建一個(gè)可以用的后臺(tái)出來,然后關(guān)于 node 和...
摘要:開發(fā)一個(gè)完整博客流程前言前段時(shí)間剛把自己的個(gè)人網(wǎng)站寫完,于是這段時(shí)間因?yàn)槭虑椴皇翘啵阏砹艘幌?,寫了個(gè)簡易版的博客系統(tǒng)服務(wù)端用的是框架進(jìn)行開發(fā)技術(shù)棧目錄結(jié)構(gòu)講解的配置文件放置代碼文件項(xiàng)目參數(shù)配置的文件日志打印文件項(xiàng)目依賴模塊 Vue + Node + Mongodb 開發(fā)一個(gè)完整博客流程 前言 前段時(shí)間剛把自己的個(gè)人網(wǎng)站寫完, 于是這段時(shí)間因?yàn)槭虑椴皇翘啵阏砹艘幌?,寫了個(gè)簡易...
摘要:本地和服務(wù)器環(huán)境本地位服務(wù)器阿里云輕量應(yīng)用服務(wù)器使用的連接工具當(dāng)然還有這幾個(gè)中任選一個(gè)就好啦。連接工具使用方法創(chuàng)建填入服務(wù)器地址和用戶名,點(diǎn)擊確認(rèn)然后輸入密碼即可。執(zhí)行測試項(xiàng)目新建項(xiàng)目文件。使用編輯器打開項(xiàng)目文件。 本地和服務(wù)器環(huán)境 本地:Windows10 64位 服務(wù)器:阿里云輕量應(yīng)用服務(wù)器CentOS 7.3 使用的連接工具:puttymobaxterm當(dāng)然還有Xshell這幾個(gè)...
閱讀 1221·2021-09-22 15:26
閱讀 2817·2021-09-09 11:52
閱讀 2151·2021-09-02 09:52
閱讀 2389·2021-08-12 13:28
閱讀 1332·2019-08-30 15:53
閱讀 658·2019-08-29 13:47
閱讀 3550·2019-08-29 11:00
閱讀 3241·2019-08-29 10:58