日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

node + express + mongodb 手动配置

發布時間:2025/3/21 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 node + express + mongodb 手动配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先創建一個文件夾,在文件夾中創建一個以js為后綴的主文件列如app.js

下載express框架和mongoose模塊用來操作mongodb數據庫

npm i express --save npm i mongoose --save

在app.js文件中;

第一步、引入express然后引入bodyParser模塊是用來解析客戶端數據

第二步、創建express應用

第三步、引入需要的路由文件(類似于Django的class類視圖,有幾個視圖創建幾個路由文件)

第四步、設置跨域訪問,代碼如下:

跨域代碼:

//設置跨域訪問 app.all("*", function (req, res, next) {//設置允許跨域的域名,*代表允許任意域名跨域res.header("Access-Control-Allow-Origin", req.headers.origin || '*');// //允許的header類型res.header("Access-Control-Allow-Headers", "Content-Type, Authorization, X-Requested-With");// //跨域允許的請求方式 res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");// 可以帶cookiesres.header("Access-Control-Allow-Credentials", true);if (req.method == 'OPTIONS') {res.sendStatus(200);} else {next();} })

第五步、解析post數據,代碼如下:

app.use(bodyParser.urlencoded({ extends: false })) app.use(bodyParser.json())

app為應用名

第六步、把引入的路由放到use中間件上為路由對象匹配請求路徑,列如,代碼如下:

app.use('/list',ls)

list為一級路由,ls是引入的路由模塊

第七步、配置運行項目端口號,代碼如下:

app.listen(3000,()=>{console.log('服務器啟動成功'); })

端口號為3000

app.js全部代碼如下:

const express=require("express")//引入express const bodyParser = require('body-parser')//解析客戶端數據 require("./sjk")//引入數據庫 const app=express()//創建應用 const ls = require('./router')//引入路由//設置跨域訪問 app.all("*", function (req, res, next) {//設置允許跨域的域名,*代表允許任意域名跨域res.header("Access-Control-Allow-Origin", req.headers.origin || '*');// //允許的header類型res.header("Access-Control-Allow-Headers", "Content-Type, Authorization, X-Requested-With");// //跨域允許的請求方式 res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");// 可以帶cookiesres.header("Access-Control-Allow-Credentials", true);if (req.method == 'OPTIONS') {res.sendStatus(200);} else {next();} })app.use(bodyParser.urlencoded({ extends: false })) app.use(bodyParser.json())app.use('/list',ls)//運行項目端口號 app.listen(3000,()=>{console.log('服務器啟動成功'); })

然后數據庫的文件夾里面創建連接數據表文件,列如database.js

在database.js文件中;

第一步、引入mongoose模塊

第二步、連接數據庫,代碼如下:

mongoose.connect("mongodb://127.0.0.1/list").then(()=>{console.log('數據庫連接成功') })

127.0.0.1為數據庫地址list為數據庫表名

再創建數據表模型的文件(類似于Django的models文件,但是是一個模型創建一個文件)例如創建一個list.js文件

在list.js文件中;

第一步、引入mongose模塊

第二步、創建表字段

第三步、把數據表向外暴露

list.js全部代碼:

const mongoose = require("mongoose")//引入mongoose//創建數據表 const list=new mongoose.Schema({//表字段photo:{type:String},name:{type:String},ower:{type:String},jianjie:{type:String} })//把數據表向外暴露 module.exports=mongoose.model("list",list)

創建一個文件夾放配置路由文件在路由文件里面寫邏輯代碼從前端獲取數據和返回數據給前端,(類似于Django的view文件中的類視圖)例如文件名為router.js。

第一步、引入express

第二步、創建路由對象

第三步、引入數據庫文件,對數據庫進行增刪改查

第四步、寫路由請求方式、邏輯代碼

第五步、導出路由

router.js全部代碼:

const express = require("express")//引入express const router = express.Router()//創建路由對象 const ls = require("./list")//引入數據庫//請求方式 路由 //req為請求 res為響應 router.get("/ll",(req,res)=>{//邏輯代碼var obj={photo:'成功'}res.json({obj})//返回數據 })//導出路由 module.exports=router

mongoose模塊的增刪改查方法合集:

// 創建文檔(構造函數) const peopleList = new PeopleList({name: '姓名',age: '年齡',school:'學校' }) // 將文檔插入到數據 peopleList.save() // 查詢用戶集合中所有文檔 可以根據條件查詢 PeopleList.find().then(result=> console.log(result)) // 通過_id字段查找文檔 會返回一個數組 PeopleList.find({_id:'6152d78d2950e0effd966971'}).then(result=>console.log(result))// findOne返回一條文檔 是對象格式 PeopleList.findOne({name:'李逵'}).then(result=>console.log(result))// $gt大于 $lt小于 PeopleList.find({ age: { $gt: 16, $lt: 25 } }).then(result => console.log(result)) // $in包含 PeopleList.find({ name:{$in:'張飛'}}).then(result=>console.log(result)) // 選擇要查詢的字段 PeopleList.find().select('name').then(result=>console.log(result))// 對查詢出來的字段進行排序 sort升序 -sort降序 PeopleList.find().sort('age').then(result=>console.log(result)) // skip跳過多少數據 limit限制查詢數量 PeopleList.find().skip(1).limit(2).then(result => { console.log(result)})// 查找一條文檔并刪除 PeopleList.findOneAndDelete({ _id: '6152d94cda9b9bf65c544a97' }).then(result => console.log(result)) // 刪除多個文檔 PeopleList.deleteMany({}).then(result => console.log(result))// 更新文檔 PeopleList.updateOne({ name: '李逵' }, {name:'高俅'}).then(result=>console.log(result)) PeopleList.update({ _id: '6152d9f3e65fededb3f8dc0b' }, { age: 33 }).then(result => console.log(result)) // 更新多個文檔 PeopleList.updateMany({}, {school:'振濤教育'}).then(result=>console.log(result)) 李逵' }, {name:'高俅'}).then(result=>console.log(result)) PeopleList.update({ _id: '6152d9f3e65fededb3f8dc0b' }, { age: 33 }).then(result => console.log(result)) // 更新多個文檔 PeopleList.updateMany({}, {school:'振濤教育'}).then(result=>console.log(result))

總結

以上是生活随笔為你收集整理的node + express + mongodb 手动配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。