Tag: 数据库

使用Redis和Node.js前端+后端

我正在制作一个使用节点js的web工具,它需要不断地获取大量的数据并将其提供给用户。 为了让每个新用户都没有实例化大量的侦听器并在本地处理所有数据,我创build了一个node.js后端,它接收所有数据并将处理后的数据推送到Redis数据库。 然后我想要一个单独的前端,用户从这个相同的Redis数据库提供数据。 我看过很多教程,解释了如何使用Node.js创buildRedis服务器,这是我需要的后端,但是我需要我的前端连接到由我的后端创build的现有Redis数据库。 是否有捷径可寻? 另外这台服务器上运行的服务器已经在运行2个Redis数据库了。 这会是一个问题吗? 我没有看到在Node.js上创build数据库编号的方法,例如,我会创build一个Redis数据库Python。 谢谢 大卫

nodeJS模块mongoose给我错误

当我运行我的代码我得到一个错误我想要做的是当有人login到我的网站它将IP和其他数据logging到数据库中。 它似乎工作,但后来我得到这个错误,它退出了我的应用程序 { [Error: Trying to open unclosed connection.] state: 1 } Connection to database has been established /home/azura/node_modules/mongoose/lib/index.js:343 throw new mongoose.Error.OverwriteModelError(name); ^ OverwriteModelError: Cannot overwrite `dataType` model once compiled. at Mongoose.model (/home/azura/node_modules/mongoose/lib/index.js:343:13) at Namespace.<anonymous> (/home/azura/Desktop/dbWrite.js:19:37) at Namespace.EventEmitter.emit (events.js:95:17) at Namespace.emit (/home/azura/node_modules/socket.io/lib/namespace.js:205:10) at /home/azura/node_modules/socket.io/lib/namespace.js:172:14 at process._tickCallback (node.js:415:13) 我使用的代码是: var mongoose = require("mongoose"); var express = […]

Amazon Web Services:从Lambda函数删除DynamoDB数据库上的项目

如何从Lambda函数中删除DynamoDB数据库中的项目。 我知道如何投入和项目。 这是工作代码: dynamo.putItem({ "TableName": "Table", "Item": item }, function(err, data) { if (err) { console.log("Failure: " + err); context.succeed("Failure!"); context.done(); } else { console.log("Success!"); context.succeed("Success!"); context.done(); } });

数据库插入/更新nodejs中的事件驱动事件

Nodejs在一个事件驱动的事情中接近一切。 监视数据库更改的简单方法是在单独的线程上轮询它。 是否有一个基于事件的等价物? 如何监视一个数据库的nodejs的变化?

在Mongoose的模式中使用短字段名称是可取的吗?

也许与我昨天在这里问的未答复的问题有关是否build议在Mongoose的模式中使用短字段名称的问题? 根据这里的文章 ,更长的字段名称会在服务器的硬盘中产生更大的数据库,以及内存中使用的任何caching。 真的吗? 为什么Mongoose的devise者没有使用某种字段名称映射机制来节省数据库空间?

创build自定义订单系统

我有这个问题很多。 所以我为这家公司工作。 这是一家小公司。 很小。 他们有一个古老的订购系统,使用MSACCESS,并build立在Visual Basic中。 我一直负责开发一个新的订单系统来处理订单,并在线接受订单。 我在Excel中创build了一个订单,其中包含所有需要作为基础的正确计算。 我find了一个名为SpreadsheetConverter的服务,将其转换为HTML或者如果我喜欢Node.JS. 但是说实话,我不知道如何处理Node.JS。 我有一些VB的知识,我(有点)开始理解数据库。 我的问题是,如果我想构build一个可以接受订单,存储/检索客户数据(自动填充?),将订单信息存储到数据库以便检索它们的应用程序,那么最好的办法是从哪里开始。 订单系统必须定制给这家公司,他们做门,所以计算处理大量和风格很多。 我有我需要的所有计算。 基本上我应该从哪里开始,如果我想build立一个用户界面,编写简单的代码,并让它与数据库交互。 我检查了Xojo,我有一个Mac,所以我不能使用Visual Basic。 我应该在哪里开始数据库? 或者是否可以连接电子表格转换器创build的Node.JS,并将它连接到Firebase之类的东西? 我很抱歉,如果这一切似乎令人困惑,我基本上不知道从哪里开始,正确的方向是我所需要的,所以我可以缩小我的重点。

NodeJS用knex迭代速度太快

我在查询(knexjs.org)的for循环有一些困难。 让我们开始如何遍历我的数组。 我的数组看起来像这样: [ { module_id: 9, able: '1', will: '1' }, { module_id: 9, able: '1', will: '1' }, { module_id: 2, able: '1', will: '1' }, { module_id: 2, able: '1', will: '1' }, { module_id: 4, able: '1', will: '1' }, { module_id: 4, able: '1', will: '1' }, { module_id: 1, […]

从多对多关系中selectsequelize

我试图从表中select引用另一个表。 我在桌子食物和桌子成份之间有多对多的关系。 食物模型: module.exports = function(sequelize, DataTypes) { return sequelize.define('food', { id: { type: DataTypes.INTEGER(10), allowNull: false, primaryKey: true, autoIncrement: true }, name_food: { type: DataTypes.STRING, allowNull: false } }, { tableName: 'food', freezeTableName: true }); }; Food_ingredients模型: module.exports = function(sequelize, DataTypes) { return sequelize.define('food_ingredients', { id: { type: DataTypes.INTEGER(10), allowNull: false, primaryKey: true, autoIncrement: […]

Mongoose.js在数据库中find昨天的date

我想查find昨天为止创build的所有用户。 这是我的代码,使查询string: var today = new Date(); var a = today.getDate(); a–; today.setDate(a); var yesterday = today.toDateString(); 它会返回类似于:Sun Jan 17 2016 …哪个是昨天的date,但是db以iso格式存储date,如: "date" : ISODate("2016-01-13T13:23:08.419Z")我得到的是2016-01-13T13:23:08.419Z 。 我现在的问题是,我不能使用昨天的variables来查询数据库为我需要的用户,即使我可以,我不知道如何find每一个登记,包括今天发生的。 任何帮助? 非常感谢你!

如何直接从网页浏览器安全地执行对云端的授权

我打算build立一个办公室扩展应用程序(或多或less是一个HTML5应用程序)。 应用程序最有价值的部分是应用程序提供的内容,因此内容信息必须安全地保存在数据库中。 任何试图访问内容的人都必须通过显示用户名和密码来certificate自己的身份。 我有一个名为“_users”的Cloudant数据库,它存储所有的用户login信息,如用户名和密码,另一个名为“_contents”的Cloudant数据库,它存储所有的内容信息。 当用户试图用他们的网页浏览器访问“_content”数据库时,应用程序会要求用户login。 成功地将此用户的凭证与“_users”数据库中的数据匹配后,此用户便可访问“_content”数据库。 理想的情况是,login和授权过程可以只使用Web浏览器和Cloudant数据库来完成。 我不想有任何“中间人”(例如运行nodejs的Web服务器)。 我怎样才能做到这一点。 好的,这是我无法解决的一些问题。 当用户尝试build立与Cloudant数据库的连接时,必须提供一个API密钥。 好吧,我可以生成一个允许读取“_users”数据库的API密钥,并将此API密钥提供给用户。用户可以使用此密钥连接到“_users”,但这是否意味着使用此API密钥,任何用户可以读取“_users”数据库中的所有数据? 这将是一场灾难。 如果上述问题可以解决,如何进行授权? 我应该为每个用户不断生成API并在以后删除它们吗? 我应该在什么时候执行删除操作?