在我的项目中有许多数据库,一个是masterDb,另一个是基于masterDb的数据库连接.例如,在验证页面中,用户可以输入"公司ID",可以使用masterDb检查此"公司ID",如果存在id,则返回特定公司的数据库名称.使用数据库名称我想连接到特定的公司数据库.
现在我可以成功登录并获得数据库名称.使用此db名称(req.headers ['x-key-db'])我可以连接到特定数据库.但在这里我将数据库连接代码放在每个api调用中.有没有其他方法可以创建一次并在每个api调用中动态使用它.
app.get('/api/student-limited/:_pageNumber/:_pageSize', function(req, res) {
var db = mongoose.createConnection();
db.open('mongodb://localhost:27017/'+req.headers['x-key-db']);
var ClassSection = db.model('ClassSections', SectionSchema);
var Student = db.model('Students', StudentSchema);
var _pageNumber = parseInt(req.params._pageNumber), _pageSize = parseInt(req.params._pageSize);
Student.find({}, function (err, _docs) {
if(_docs){
Student.find({}, null, {sort: { Name: 1} }).skip(_pageNumber > 0 ? ((_pageNumber-1)*_pageSize) : 0).limit(_pageSize).populate('_idClass').exec(function (err, docs) {
if(err)
res.json(err);
else
res.json({ "TotalCount" : _docs.length, "_Array" : docs});
});
}
});
});Run Code Online (Sandbox Code Playgroud)
我刚开始学习 angular2,我正在尝试使用 angular2 做 RxJs 的样本。如果有人帮助我,将不胜感激。
RxJs 代码-
var obs = Rx.Observable.interval(500)
.take(5)
.do(i => console.log(i) );
Run Code Online (Sandbox Code Playgroud)
包.json
{
"name": "angular-quickstart",
"version": "1.0.0",
"scripts": {
"start": "tsc && concurrently \"tsc -w\" \"lite-server\" ",
"lite": "lite-server",
"postinstall": "typings install",
"tsc": "tsc",
"tsc:w": "tsc -w",
"typings": "typings"
},
"license": "ISC",
"dependencies": {
"@angular/common": "~2.0.1",
"@angular/compiler": "~2.0.1",
"@angular/core": "~2.0.1",
"@angular/forms": "~2.0.1",
"@angular/http": "~2.0.1",
"@angular/platform-browser": "~2.0.1",
"@angular/platform-browser-dynamic": "~2.0.1",
"@angular/router": "~3.0.1",
"@angular/upgrade": "~2.0.1",
"angular-in-memory-web-api": "~0.1.1",
"bootstrap": "^3.3.7",
"core-js": "^2.4.1",
"reflect-metadata": "^0.1.8",
"rxjs": "5.0.0-beta.12",
"systemjs": "0.19.39", …Run Code Online (Sandbox Code Playgroud) 我正在使用 Flutter 构建一个访问 Firebase 数据库的应用程序。Flutter 方面一切都很好......但我是 Node.js 和 Cloud Functions 的新手。我正在尝试创建一个 Node.js 函数来对一个 Firebase 数据库节点上的记录删除事件做出反应,然后从其他两个 Firebase 数据库节点和来自 Firestore 的图像文件中删除记录。
我正在通过functions.database.onDelete调用对触发事件做出反应,没问题,但在下一个障碍 ietrying 读取 admin.database 以获取快照时遇到了问题。
我创建了一个虚拟函数,用于.onUpdate获取触发事件(不想像我使用的那样继续重新创建我的数据.onDelete),然后尝试读取我的 Firebase 数据库以访问不同的节点。触发事件被很好地拾取,但我似乎没有数据库引用 Url 来进行读取……但它是同一个数据库。调用 的控制台日志上的输出process.env.FIREBASE_CONFIG显示存在 Url。
包含的函数代码也有注释以显示我在控制台日志上获得的各种输出。
我快疯了.....请谁能告诉我我哪里出错了。过去两天一直在搜索 Google、Stackoverflow、Firebase 文档:-(
const admin = require("firebase-admin"); // Import Admin SDK
const functions = require("firebase-functions"); // Import Cloud Functions
admin.initializeApp({
credential: admin.credential.cert(
require("./user-guy-firebase-adminsdk.json")
)
});
exports.testDeleteFunction = functions.database
.ref("/user-guys/{userGuyId}")
// Using .onUpdate as I don't want to keep restoring my …Run Code Online (Sandbox Code Playgroud) node.js firebase firebase-realtime-database google-cloud-functions firebase-admin
我正在使用express,nodemailer和express来测试通过gmail帐户发送电子邮件.但由于某种原因,我无法发送它.此外,帐户电子邮件和密码是100%正确,仍然我收到此错误.错误不会告诉问题在哪里.
此外,我已经"打开"gmail设置,即降低了应用程序的设置.
我没有使用 http://nodemailer.com/2-0-0-beta/using-oauth2/ 即使我使用此电子邮件ID登录浏览器,我是否需要使用它?
我确实需要在不使用浏览器的情况下开发它,但我希望以前能够看到它.
{[错误:发件人无效"**********@ gmail.com>"]代码:'EENVELOPE',命令:'API'} /Users/jay/code/gmailSendEmail/app.js:43 res.json({yo:'error'}); ^
var nodemailer = require('nodemailer');
var express = require('express');
var app = express();
var nodeMailer = require('nodemailer');
var transporter = nodemailer.createTransport();
console.log ( ' coming here 1');
var router = express.Router();
app.use('/sayHello', router);
router.post('/', handleSayHello); // handle the route at yourdomain.com/sayHello
function handleSayHello(req, res) {
// Not the movie transporter!
var transporter = nodemailer.createTransport({
service: 'Gmail',
auth: {
user: '****@gmail.com', // Your email id
pass: '*****' // Your password
} …Run Code Online (Sandbox Code Playgroud) 我在函数内调用了一个 $mdDialog 。我想对 $mdDialog 进行单元测试并取消案例。
下面是我的控制器代码(app.controller.js)。
(function () {
'use strict';
app.controller('AppCtrl', AppCtrl);
AppCtrl.$inject = ['$scope', '$mdDialog'];
function AppCtrl($scope, $mdDialog) {
$scope.saveEntry = function (ev) {
var confirm = $mdDialog.prompt()
.title('Save Entry')
.textContent('If you want, you can add a description to explain what you changed.')
.placeholder('Version Description')
.ariaLabel('Version Description')
.initialValue('')
.targetEvent(ev)
.ok('Save')
.cancel('Cancel');
$mdDialog.show(confirm).then(function (result) {
$scope.status = true;
}, function () {
$scope.status = false;
});
};
}
})();
Run Code Online (Sandbox Code Playgroud)
以下是规范代码(app.controller.spec.js):
describe('Unit test AppController: mdDialog', function …Run Code Online (Sandbox Code Playgroud) unit-testing angularjs karma-jasmine angular-mock angular-material
node.js ×2
angular ×1
angular-mock ×1
angularjs ×1
express ×1
firebase ×1
gmail ×1
mongodb ×1
mongoose ×1
nodemailer ×1
rxjs ×1
unit-testing ×1