4.3 KiB
4.3 KiB
id | title | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
5895f70cf9fc0f352b528e67 | Implement the Serialization of a Passport User | 2 | Внедрить сериализацию пользователя паспорта |
Description
const mongo = require('mongodb').MongoClient;
) Теперь мы хотим подключиться к нашей базе данных, а затем начать прослушивание запросов. Цель этого - не разрешать запросы до подключения нашей базы данных или ошибки базы данных. Для достижения этой цели вы захотите охватить сериализацию и прослушиватель приложений следующим образом: mongo.connect (process.env.DATABASE, (err, db) => { if (err) { console.log («Ошибка базы данных:« + ошибка »); } else { console.log («Успешное подключение к базе данных»);Теперь вы можете раскомментировать блок в deserializeUser и удалить//serialization and app.listen
}});
done(null, null)
. Обязательно установите DATABASE в свой .ENV-файл в строку подключения вашей базы данных (например: DATABASE=mongodb://admin:pass@mlab.com:12345/my-project
). Вы можете создать бесплатную базу данных на mLab . Поздравляем - вы закончили настройку сериализации! Представьте свою страницу, когда вы думаете, что у вас все в порядке. Если вы работаете в ошибки, вы можете проверить проект завершен до этого момента здесь . Instructions
Tests
tests:
- text: Соединение с базой данных присутствует
testString: 'getUserInput => $.get(getUserInput("url")+ "/_api/server.js") .then(data => { assert.match(data, /mongo.connect/gi, "You should have created a connection to your database"); assert.match(data, /mongo.connect[^]*app.listen[^]*}[^]*}/gi, "You should have your app.listen nested at within your database connection at the bottom"); }, xhr => { throw new Error(xhr.statusText); })'
- text: 'Теперь десериализация корректно использует БД и <code>done(null, null)</code> стирается'
testString: 'getUserInput => $.get(getUserInput("url")+ "/_api/server.js") .then(data => { assert.notMatch(data, /null,( |)null/gi, "The callback in deserializeUser of (null, null) should be completely removed for the db block uncommented out"); }, xhr => { throw new Error(xhr.statusText); })'
Challenge Seed
Solution
// solution required