Я успешно выполнял CRUD от node.js до mongodb с использованием mongoose.
из файла node.js я сделал npm установить монгуз и npm init -y и назовите файл index.js < /p>
и для пакета. /> "Mongoose": "^8.16.4"
},
"devDependencies": {
"Nodemon": "^3.1.10"
} < /p>
Вот какой -то основной пример, но мой вопрос - как я могу реализовать безопасность < /p>
. const mongoose = require('mongoose');
async function connectDB() {
try {
await mongoose.connect('mongodb://localhost:27017/myDatabase')
console.log('MongoDB connected successfully');
} catch (err) {
console.error('MongoDB connection error: ', err);
process.exit(1);
}
}
connectDB();
const userSchema = new mongoose.Schema({
name: { type: String, required: true },
email: { type: String, required: true, unique: true },
age: Number,
})
//User is name of collection
const User = mongoose.model("User", userSchema);
//perform CRUD operations
//create the data or insert data into MongoDb
async function createUser(name, email, age) {
console.log('create or insert data into MongoDb');
try {
const newUser = await User.create({ name, email, age });
console.log('new user created: ', newUser);
return newUser;
} catch (err) {
console.error('error creating user: ', err);
}
}
createUser('dude', 'dude@yahoo.com', 23);
//read retrieve data 2 methods
//method 1
async function getAllUsers() {
console.log('read or retrieve data');
try {
const users = await User.find({});
console.log("all user: ", users);
return users;
} catch (err) {
console.error('error fetching users: ', err);
}
}
getAllUsers();
//method 2 retrieve data by id
async function getUserById(id) {
console.log("retrieve data by ID");
try {
const user = await User.findById(id);
console.log('user found: ', user);
return user;
} catch (err) {
console.error("error finding user by ID:", err);
}
}
//getUserById('6882e93f9a30b5a80922dd82');
//update data in mongoDb using id
async function updateUser(id, newData) {
console.log('update data by ID');
try {
const updateUser = await User.findByIdAndUpdate(id, newData, { new: true });
console.log('user updated', updateUser);
return updateUser;
} catch (err) {
console.error('error updating user: ', err);
}
}
//updateUser('6882e93f9a30b5a80922dd82', { name: "don", age: 22, email: "don@google.com" });
//delete data
async function deleteUser(id) {
console.log('delete data by id')
try {
const result = await User.findByIdAndDelete(id);
console.log('user deleted', result);
return result;
} catch (err) {
console.error('error deleting user: ', err);
}
}
deleteUser('6882e93f9a30b5a80922dd82');
Подробнее здесь: https://stackoverflow.com/questions/797 ... sing-mongo
Как реализовать безопасность при общении от node.js в mongodb с помощью mongoose ⇐ Javascript
Форум по Javascript
1753495661
Anonymous
Я успешно выполнял CRUD от node.js до mongodb с использованием mongoose.
из файла node.js я сделал npm установить монгуз и npm init -y и назовите файл index.js < /p>
и для пакета. /> "Mongoose": "^8.16.4"
},
"devDependencies": {
"Nodemon": "^3.1.10"
} < /p>
Вот какой -то основной пример, но мой вопрос - как я могу реализовать безопасность < /p>
. const mongoose = require('mongoose');
async function connectDB() {
try {
await mongoose.connect('mongodb://localhost:27017/myDatabase')
console.log('MongoDB connected successfully');
} catch (err) {
console.error('MongoDB connection error: ', err);
process.exit(1);
}
}
connectDB();
const userSchema = new mongoose.Schema({
name: { type: String, required: true },
email: { type: String, required: true, unique: true },
age: Number,
})
//User is name of collection
const User = mongoose.model("User", userSchema);
//perform CRUD operations
//create the data or insert data into MongoDb
async function createUser(name, email, age) {
console.log('create or insert data into MongoDb');
try {
const newUser = await User.create({ name, email, age });
console.log('new user created: ', newUser);
return newUser;
} catch (err) {
console.error('error creating user: ', err);
}
}
createUser('dude', 'dude@yahoo.com', 23);
//read retrieve data 2 methods
//method 1
async function getAllUsers() {
console.log('read or retrieve data');
try {
const users = await User.find({});
console.log("all user: ", users);
return users;
} catch (err) {
console.error('error fetching users: ', err);
}
}
getAllUsers();
//method 2 retrieve data by id
async function getUserById(id) {
console.log("retrieve data by ID");
try {
const user = await User.findById(id);
console.log('user found: ', user);
return user;
} catch (err) {
console.error("error finding user by ID:", err);
}
}
//getUserById('6882e93f9a30b5a80922dd82');
//update data in mongoDb using id
async function updateUser(id, newData) {
console.log('update data by ID');
try {
const updateUser = await User.findByIdAndUpdate(id, newData, { new: true });
console.log('user updated', updateUser);
return updateUser;
} catch (err) {
console.error('error updating user: ', err);
}
}
//updateUser('6882e93f9a30b5a80922dd82', { name: "don", age: 22, email: "don@google.com" });
//delete data
async function deleteUser(id) {
console.log('delete data by id')
try {
const result = await User.findByIdAndDelete(id);
console.log('user deleted', result);
return result;
} catch (err) {
console.error('error deleting user: ', err);
}
}
deleteUser('6882e93f9a30b5a80922dd82');
Подробнее здесь: [url]https://stackoverflow.com/questions/79715365/how-to-implement-security-when-communicating-from-node-js-to-mongodb-using-mongo[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия