Tag: 表示

我如何在Mongoose中执行查询查询?

我有一个类似MongoDB的Ebooks数据集 { "_id" : ObjectId("58b56fe19585b10cd42981d8"), "cover_path" : "D:\\Ebooks\\uploads\\ebooks\\cover\\1488285665748-img1-700×400.jpg", "path" : "D:\\Ebooks\\uploads\\ebooks\\pdf\\1488285665257-Webservices Natraz.pdf", "description" : "ebook", "title" : "book name", "tag" : [ "Hindi", "Other" ], "__v" : NumberInt(0) } 现在我想search一些关键字是否与"title:"匹配一点,然后显示所有相关的书籍对象。 我的Mongoose模式是: var mongoose = require('mongoose'); var Schema = mongoose.Schema; var EbookSchema = new Schema({ title: {type:String}, description: {type:String}, path: {type:String,required:true}, cover_path: {type:String,required:true}, tag: [{ type: […]

Node Express APP 1到N(使用MongoDB)

我们正在用express和MongoDB开发一个大型的节点应用程序。 我们正试图获得最佳性能,因为我们将在同一台服务器上运行多个客户端(可能有100多个)。 我们在考虑一对一的APP,一个实例,一个数据库和多个客户端访问他们的域名。 我想知道这个场景(一个服务器,多个客户端)对于性能和开发的最佳设置是什么 一个实例,一个数据库(客户端数据将由条目上的company ObjectId识别,并且客户端将访问域或子路由) 一个实例,多个表(或数据库,什么是最好的?) 多个实例,多个表 任何其他的想法? 在第一个设置中,开发人员总是会担心当前的公司,这可能会给应用带来局限性 在第二种设置中,关注点将继续,但公司不会干涉数据库条目(更干净的模型) 在第三种情况下(可能是最好的开发方式),只有一家公司会受到对待,并带来很多可能性,但可能会带来性能问题(所有实例都将在一台服务器上运行) 其他设置我没有想到可以更好。 笔记: 我们正在使用mongoose库 我有一些WordPress的经验,我喜欢为它创build主题和插件的方式。 我们正试图达到类似于Wordpress与PHP的性能水平(有效地运行在服务器上的几个Wordpress) 抱歉,坏的英语

我可以通过httpsconfigurationexpressjs通过http和其他网页来提供服务吗?

根据对这个问题的回答: 如何configurationnodejs / expressjs通过https提供页面? 我一直在试图设置相当于: var express = require('express'); var fs = require("fs"); var crypto = require('crypto'); var app = express.createServer(); var appSecure = express.createServer(); var privateKey = fs.readFileSync('privatekey.pem').toString(); var certificate = fs.readFileSync('certificate.pem').toString(); var credentials = crypto.createCredentials({key: privateKey, cert: certificate}); appSecure.setSecure(credentials); app.get('/secretStuff', function(req,res) { //redirect to https } appSecure.get('/secretStuff', function(req, res) { //show you the […]

在express和js和socket.io中使用路由,也可能在一般情况下使用节点

我正尝试在socket.io中编写一个多通道应用程序。 您所在的频道应该由您所在的url来定义。 如果我做永久值的app.jsjoin部分一切正常。 只要我改变它,以便route.page的路由进行连接,我得到的错误,该上下文中不可用套接字。 什么是正确的方式,以便我可以dynamicjoin频道? /app.js var io = socketio.listen(app); require('./io')(io); io.sockets.on('connection', function (socket) { socket.on('debug', function (message) { socket.get('channel', function (err, name) { socket.in(name).broadcast.emit('debug', message); }); }); }); /io.js var socketio = function (io) { if (!io) return socketio._io; socketio._io = io; } module.exports = socketio; /routes/index.js var io = require('../io')(); exports.page = function(req, […]

使用express / connect-redis抓取页面上的现有会话

使用connect,express和socket.io,我试图让我的应用程序重新连接时获取会话的详细信息。 我的会话显然是在客户端连接的情况下工作的,但是如果我在浏览器上刷新页面,它会忘记一切。 我的会话cookie肯定是一样的,所以不是这样的。 我的代码是我从很多不同来源获取的一些片段,因为似乎没有一个完整的示例应用程序。 : – / 我错过了什么? var qs = require('querystring'), express = require('express'), app = express.createServer(), io = require('socket.io').listen(app.listen(8000)), routes = require('./routes'), pCookie = require('connect').utils.parseCookie, Session = require('connect').middleware.session.Session, RedStore= require('connect-redis')(express), sStore = new RedStore(); // Configuration app.configure(function(){ app.set('views', __dirname + '/views'); app.set('view engine', 'ejs'); app.use(express.bodyParser()); app.use(express.methodOverride()); app.use(express.cookieParser()); app.use(express.session({ store: sStore, secret: 'tehsecretz' })); […]

Express.js在使用会话时没有响应

这是我的应用程序: var express = require('express'), app = express.createServer(), RedisStore = require('connect-redis')(express); app.configure (function(){ app.use (express.logger({ format: ":method :url" })); app.use (express.bodyParser()); app.use (express.cookieParser()); app.use (express.session({ store: new RedisStore, secret: "totally random string" })); }); app.configure ('development', function () { console.log ("Development mode."); }); app.configure ('production', function () { console.log ("Production mode."); }); app.get ('/', function […]

快递和连接资产经理

我正在尝试使用express -expressmanager 。 显然,我不明白如何调整基于连接的示例到一个快速应用程序。 我把这个由快速命令行创build的框架应用程序(滚动到底部以查看我运行的命令),并尝试将它合并到connect-assetmanager主页的示例中。 这是我的app.js: var express = require('express') , routes = require('./routes') , assetManager = require('connect-assetmanager'); var assetManagerGroups = { 'css': { 'route': /\/static\/css\/[0-9]+\/.*\.css/ , 'path': './public/stylesheets/' , 'dataType': 'css' , 'files': [ 'style.css', 'style2.css' ] } }; var assetsManagerMiddleware = assetManager(assetManagerGroups); var app = module.exports = express.createServer(); app.configure(function(){ app.set('views', __dirname + '/views'); […]

AJAX图像上传与backbone.js node.js和express

所以我一直在网上search一天,试图find一个完整的例子,如何上传图像以及来自骨干模型的正常POST(创build)请求。 所以经过一些初步的挖掘,我发现了HTML5中的FileReader api – 经过一些testing,我通过创build一个XMLHttpRequest() 我现在试图解决的问题是我怎么能让bacbone发送文件数据以及POST请求,就像你在正常的多部分工作stream程中遇到的一样。 林相当新,所以请原谅任何明显的错误。 inheritance人我到目前为止。 模型 define( [ 'backbone' ], function (Backbone) { var Mock = Backbone.Model.extend({ url: '/api/v1/mocks', idAttribute: '_id', readFile: function(file){ var reader = new FileReader(); self = this; reader.onload = (function(mockFile){ return function(e){ self.set({filename: mockFile.name, data: e.target.result}); }; })(file); reader.readAsDataURL(file); } }); return Mock; } ); 视图 define( [ […]

与正常路线一起使用Swagger Express

我有兴趣使用像swagger-node-express这样的东西为我正在开发的项目构buildAPI。 但是,该应用程序的某些部分是非基于API(改为提供HTML)。 有没有人有任何想法,我将如何使用Swagger旁边的正常路线?

如何在NodeJS / Express / Jade中正确使用dev和prod资源

我有一个基于Express的结构和Jade模块的NodeJS应用程序的意见。 我需要在开发人员机器上使用完整版本的资产,在生产机器上使用最小版本。 你能解释一下我应该怎么做的最佳做法吗? 编辑:如果你把一个减号请描述的原因。