Tag: 表示

如何预装MongoDB文档?

我正在用Node和MongoDB编写一个Web应用程序(用mongoose) – 我有一个具有预定义数据的集合(图像链接,用户将select其中的一个 – 它们的图像链接设置为closures并赢得)在应用程序的运行过程中不能被改变),并且需要与其他收集进行连接。 我不知道为此创build一个集合还是将数据保存在单个JSON文件中更好。 但是因为我需要join这个集合与其他集合,我决定将数据保存在数据库中。 现在的问题是我如何创build数据库中的数据一次,每次我提出的节点服务器的数据将不会再次创build? (东西像upsert)? 哪里是最好的地方添加此方法? 在Schema模块中还是在哪里? 谢谢。

使用部分中的n个文件夹简化快速路由

我正在使用Express进行一些路由,但我无法find一种更高效的方法。 例如,在我的节点脚本来初始化应用程序,我需要声明每个路线,如: // server.js app.get('/partials/:name', routes.partials); app.get('/partials/session/:name', routes.sessionpartials); 接着: // routes.js exports.partials = function (req, res) { var name = req.params.name; res.render('partials/' + name); }; exports.sessionpartials = function (req, res) { var name = req.params.name; res.render('partials/session/' + name); }; 所以我有权访问/partials和/partials/session ,但是如果我在/partials创build另一个文件夹而不声明它,不会被使用。 我怎样才能改善这个?

节点新手 – 要求的目的('快递')

在以下简单的socketIo服务器中,任何节点忍者都可以解释第一行的目的。 我没有使用快递实际上创build基于http的服务器,所以它会工作得很好,没有? 有点困惑… var app = require('express')(); var server = require('http').Server(app); var io = require('socket.io')(server); server.listen(8080); app.get('/', function (req, res) { res.sendfile(__dirname + '/index.html'); }); io.on('connection', function (socket) { console.log('connection '+socket); socket.on("data",function(d){console.log('data from flash: ',d);}); socket.emit("message","hello from server"); socket.emit('news', { hello: 'world' }); socket.on('disconnect', function (data) { console.log(' disconnect'); }); });

使用来自GET请求的数据而无需用户的页面重新加载

所以,这个主题是Node.js + express + ejs + socket.io + mongoose所有最新版本的单页网页应用程序。 让我们想象一下用户在他的浏览器的地址栏“www.app.com/ data ”中的input。 我想根据这个数据从db中获取响应,并把它发回给用户,并为他提供基本的“www.app.com”页面,并在其中执行db响应。 我很好奇两个select:什么是最好的方式来做到这一点与没有页面重新加载,例如,如果用户已经在网页上,我不想重新加载它 – 只是相应地改变数据库响应。 我可以从他的获取请求中获取这些数据: app.get('/:id', function (req, res) { console.log('got' + req.params.id); ///some db magic here… poof, response ready/// }) 但接下来我做了什么? 我正在考虑通过sockets.io发送响应,但是我怎么才能在不重新加载用户页面的情况下结束这个GET? 如果我必须发回一些东西,我可以通过ejs再次渲染这个页面来做出回应,但是当我重新加载的时候,我不能依靠sokets,cos。 你能解释我的困惑吗?

Node.js子域不工作?

我不知道我在做什么错误,我正在尝试使用npm subdomain从虚拟子域请求。 我按照指示https://github.com/edwardhotchkiss/subdomain var subdomain = require('subdomain'); var express = require('express'); var app = express(); var http = require('http'); var server = http.createServer(app); app.use(subdomain({ base : 'localhost', removeWWW : true })); app.get('/subdomain/blog/', function(request, response) { response.end('BLOG.LOCALHOST: "/"'); }); app.get('/', function(request, response) { response.end('LOCALHOST: "/"'); }); 并在我的电脑主机文件,我补充说 127.0.0.1 localhost 127.0.0.1 blog.localhost 当我路由到http://blog.localhost:3000/我得到这个返回的LOCALHOST: "/"而不是BLOG.LOCALHOST: "/" 我不知道为什么,我删除了我的快速路由器,我试图删除任何路由逻辑和东西,但我仍然得到这一点。 显然我做错了什么。 […]

为什么这个node.jscallback没有立即运行?

使用express-generator它会吐出一些像这样的error handling代码: app.use('/', routes); app.use('/users', users); // catch 404 and forward to error handler app.use(function(req, res, next) { var err = new Error('Not Found'); err.status = 404; next(err); }); // error handlers // development error handler // will print stacktrace if (app.get('env') === 'development') { app.use(function(err, req, res, next) { res.status(err.status || 500); res.render('error', { […]

让教程SocketIO工作

我正在试图从我的域名上运行的SocketIO的例子。 我已经设法通过命令行来安装Node.JS以及ExpressJS和SocketIO。 现在,我试图让这个运行。 在服务器端我有: (位于/ nodejs中,与/ public_html处于同一级别,不在其中) var app = require('express')(); var server = require('http').Server(app); var io = require('socket.io')(server); server.listen(80); app.get('/', function (req, res) { res.sendfile(__dirname + '/index.html'); }); io.on('connection', function (socket) { socket.emit('news', { hello: 'world' }); socket.on('my other event', function (data) { console.log(data); }); }); 然后在客户端我有: (位于/public_html/socketio.htm) <!DOCTYPE html> <head> <title>Socket IO Test</title> […]

Bookshelf.js – hasOne关系不好

我对bookshelf.js相当陌生,所以请耐心等待。 由于我正在学习,我正在使用MySQL,并有一个非常简单的结构。 即,两个实体,一个辅助键。 这是我的结构: CREATE TABLE IF NOT EXISTS `city` ( `city_id` int(11) NOT NULL, `code` int(11) NOT NULL, `name` varchar(255) COLLATE utf8_bin NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin; CREATE TABLE IF NOT EXISTS `people` ( `people_id` int(11) NOT NULL, `city_id` int(11) NOT NULL, `name` varchar(255) COLLATE utf8_bin NOT NULL, `age` int(11) NOT NULL […]

使用Mongoose更新Node.js中由find()方法返回的结果

我是Node.js的新手。 我的Node.js应用程序有一个名为Selfie的模型。 # model/selfie.js var mongoose = require('mongoose'), Schema = mongoose.Schema, selfieSchema = new Schema({ path: { type: String }, caption: { type: String }, sent_mod: { type: Number, default: -1 }, // -1 not sent, 0 sent, 1 accepted display_count: { type: Number, default: -1 }, // -1 not sent, 0 sent, 1 displayed […]

如何在parsing中使用useMasterKey和Node.js?

嗨,大家好,我有我的应用程序在parse.com作出但我想使用主密钥,因为我有用户有pipe理员的angular色。 首先我尝试使用JS SDk,但他们告诉我,我必须使用Cloud Code。 那么我尝试使用Express和Cloud Code,但是当我尝试使用Parse.Cloud.useMasterkey()时,控制台会说: 部署失败,出现错误:Uncaught Parse.initialize()传递了一个主键,它只能在Node.js中被允许。 大豆我的问题是我如何使用Node.jsparsing? 或者有没有使用MasterKey的节点? 干杯:) 那么这是我的代码,Administrador用户想要添加新的员工,但只有他可以做到这一点,所以在数据浏览器中,用户是主密钥 exports.create = function(req, res){ Parse.Cloud.useMasterKey(); var nombre = req.body.nombre; var apellido = req.body.apellido; var email = req.body.email; var telefono =req.body.telefono; var celular = req.body.celular; var username = req.body.username; var password = req.body.pwd; //set data in empleado and users empleado.set("nombre", nombre); empleado.set("apellido", apellido); empleado.set("email", […]