【发布时间】:2022-01-20 16:28:52
【问题描述】:
我正在尝试使用 Mongoose 使用此代码将 Cosmos DB 数据库连接到我的 Node JS Web 应用程序
const express = require('express')
const path = require('path')
const bodyParser = require('body-parser')
const mongoose = require('mongoose')
const env = require('dotenv').config();
const User = require('./model/user')
mongoose
.connect(
'mongodb://' +
process.env.COSMOSDB_HOST +
':' +
process.env.COSMOSDB_PORT +
'/' +
process.env.COSMOSDB_DBNAME +
'?ssl=true&replicaSet=globaldb',
{
auth: {
username: process.env.COSMOSDB_USER,
password: process.env.COSMOSDB_PASSWORD,
},
useNewUrlParser: true,
useUnifiedTopology: true,
retryWrites: false,
},
)
.then(() => console.log('Connection to CosmosDB successful'))
.catch((err) => console.error('ERRORE: ' + err));
const app = express()
app.use('/',express.static(path.join(__dirname,'public')))
app.use(bodyParser.json())
app.set("view engine", "ejs");
app.get("/", function (req, res) {
res.render('index')})
app.get("/signup", function (req, res) {
res.render('register')})
app.post('/register', async(req,res) =>{
console.log(req.body)
res.json({status:'ok'})
})
app.listen(9999,() =>{
console.log('Server up at 9999')
})
module.exports = app
但是在运行它时我收到错误 MongooseServerSelectionError: Invalid message size: 1347703880, max allowed: 67108864
我做错了什么?
【问题讨论】:
-
您使用的是哪个 Cosmos DB API? Mongoose 仅在您使用 MongoDB API 时才有效。使用 SQL API(或 Cassandra、Gremlin 或 Table)时,它不起作用。
标签: node.js mongodb mongoose azure-cosmosdb