node.js - 猫鼬不在nodejs中获取数据
问题描述
使用 mongoshell 时没有获取数据,它工作正常
server.js 文件
const express = require('express')
const app = express()
const cors = require('cors')
const mongoose = require('mongoose')
const topicRoute = require('./routes/topicRoute')
app.use(cors())
app.use(express.json())
const dbUri = "mongodb+srv://rohan:password@db_name.qg229.mongodb.net/db_name"
mongoose.connect(dbUri)
app.use("/",topicRoute)
app.listen(3001,function(){
console.log("Server started")
})
routes/topicRoute.js 文件,此处未发现错误并返回 object 对象
const express = require('express')
const router = express.Router()
const Topic = require('../models/topicModel')
router.route("/topics").get((req,res)=>{
Topic.find().then(fetchedTopics => res.json(fetchedTopics))
})
module.exports = router
模型/topicModel.js 文件
const mongoose = require('mongoose')
const topicSchema = {
topic_id: String,
topic_name: String,
topic_description: String,
}
const Topic = mongoose.model('topics',topicSchema)
module.exports = Topic
解决方案
尝试使用此代码进行数据库连接
// database connection
const { MongoClient, Collection } = require('mongodb');
const url = 'mongodb://localhost:27017' const database = 'ecom' // database name define here const collectionName = 'reviews'; //database collection define here const client = new MongoClient(url);
async function getData(){
let result =await client.connect();
let db = result.db(database)
let collection = db.collection(collectionName)
let response = await collection.find({}).toArray()
console.log(response); }
getData();
推荐阅读
- reactjs - 无法在 redux 调度功能中获取
- python - 从字符串python中删除数字
- javascript - javascript 将我发送到错误而不是成功 {"readyState":0,"status":0,"statusText":"error"}
- java - Samza 0.14.1 没有正确处理 OffsetOutOfRangeException 异常?
- javascript - javascript 和 openLDAP 中的 MD5-Hashes 不同
- node.js - 什么是异步`完成器`函数中的回调
- c - 打印矩阵值
- android - 如何使用毕加索有效地加载大位图?
- xml - 将格式错误的 HTML 转换为分层 XML
- angular - 角电子应用程序未启动并自动退出