Tag: mysql

如何使用护照发送JSON响应给broswe

嗨我想做本地login使用passport.Everything运作良好,但是我想能够显示用户名一旦用户身份validation这里是我的代码使用Node.js和MySQL: passport.use(new LocalStrategy({ usernameField: 'email', passwordField: 'password', passReqToCallback: true // allows us to pass back the entire request to the callback }, function(req, email, password, done) { var status = []; console.log('—–'); connection.query('SELECT username FROM user WHERE email ="' + email + '"', function(err, rows) { if (err) return done(err); if (rows.length) { status.push({ username: […]

支持ORM中的MySQL视图支持

我想在我正在构build的Web应用程序中使用续集作为我的ORM。 该应用程序将基于NodeJS – Express构build和MySQL作为其关系数据库。 我在documentaino或网上找不到任何地方,是如何在后续模型中声明存在于我的MySQL数据库中的“视图”…. 是手动构build查询SQL的唯一方法吗? 谢谢

创build新模型不起作用 – 没有错误

我在我的项目中使用mysql的node-orm2。 我已经创build了数据库表,我可以查询/查找我的数据库中的数据。 但是,当我想要插入新的数据,没有任何反应 – 没有错误的callback,什么都没有。 这是相关的代码: 模型类: module.exports = function (orm, db) { var Comment = db.define('comment', { body: {type: 'text'} }); }; 模型文件夹中的Index.js: var orm = require('orm'); var settings = require('../config/settings'); var connection = null; function setup(db, cb) { require('./comment')(orm, db); return cb(null, db); } module.exports = function (cb) { if (connection) return cb(null, […]

节点和MySQL – 解决“太多连接”的问题

我有一个使用MySQL数据库在Node.js和Express上运行的应用程序。 我使用的驱动程序是node-orm2 。 我们的用户不断报告“ 太多连接 ”错误,我已经诊断出这个问题,但我不知道如何解决这个问题。 基本上发生的是,每当新用户访问该网站时,驱动程序为他们创build一个新的线程/进程 。 我可以做一个SHOW PROCESSLIST查询数据库,它会显示在那里的Time为0 。 如果用户进行另一个需要数据库的操作,那么同一个线程将被重新使用 ,并且Time会回到0 。 但是,如果他们不这样做, 线程就会保持活动状态 (使用“ Sleep Command ”), Time 。 数据库的最大连接限制为250 ,超时为7200 。 所以基本上,如果在2个小时内有超过250人使用这个网站,我们会看到“连接太多”的错误。 我尝试使用连接池 ,但这使问题变得更糟。 每当新用户使用数据库时,它就创build了10个线程,当达到7200秒超时时, 线程重新生成 。 我在这里有什么select? 我目前的方法是每半小时运行一个计划任务来closures已经打开太久的线程,但有没有更好的方法? 我正在使用以下设置: db.settings.set("properties.association_key", "{name}Id"); db.settings.set("instance.autoFetch", true); db.settings.set("instance.returnAllErrors", true); db.settings.set("instance.cache", false);

Node.js mysql错误不能读取undefined的属性?

我有一个将SMDR数据插入数据库的程序。 这是我的代码: var net = require('net'), mysql = require('mysql'), PORT = 1752, HOST = '192.168.10.2', pool = mysql.createPool({ host: 'localhost', port: 3307, user: 'root', password: 'root', database: 'mydb' }); function connectionListener(conn) { console.log('Listening for incoming calls…'); } function logCall(phonenumber, operator) { pool.getConnection(function(err, connection) { if (!err) { // If no error exists var opquery = […]

二进制字段,水线ORM

我试图插入一个节点JS缓冲区对象表示的文件( MySQL中 )(在水线jstypes二进制), 当读它并写入一个文件,该文件已损坏,我实现了一个Java程序,更新包含该文件的表中的行,我读它和文件是完美的,写入数据库时​​出现问题, 在水线ORM中没有关于二进制字段的文件。 我如何解决这个问题? 我已经打开了这个问题,这可能是sails-mysql中的一个错误。 github上的问题

本地主机拒绝来自Javascript的连接

我正在制作一个Web应用程序,它从MYSQL数据库获取信息,并使用AngularJS和NodeJS将其显示在屏幕上。 我已经build立了一个node.js服务器,从数据库中发出JSON文件。 它工作正常,如果我连接到它是这样的:192.168.1.57:8888这是我的家庭服务器IP或远程连接我的服务器,并使用localhost:8888。 这样做下载我的电脑上的JSON文件。 然而。 如果我使用JavaScript从服务器获取JSON文件,它给了我这个错误: GET http://localhost:8888/ net::ERR_CONNECTION_REFUSED 我已经尝试用AngularJS和JQuery连接到服务器,他们都给出了同样的错误。 我也试过127.0.0.1,这也不起作用。 我能做些什么来修复它,或者我可以用更好的替代方法来做到这一点? 这是node.js中的服务器代码 var http = require("http"); mysql = require("mysql"); var connection = mysql.createConnection({ user: "test", password: "test", database: "test" }); http.createServer(function (request, response) { request.on('end', function () { connection.query('SELECT * FROM feedback;', function (error, rows, fields) { response.writeHead(200, { 'Content-Type': 'x-application/json' }); response.end(JSON.stringify(rows)); }); […]

如何使用令牌(后)与node.js的Mysql?

我是一个新手程序员。 我一直在做一个非常小的网站。 我遇到了一点错误。 我find了一些解决scheme。 但是我还没有答复。 如果你不介意,请给我你的touhgt。 T ^ T 我使用Mysql连接了node.js。 'GET'运行没有任何问题。 但'POST'部分无法获取我在网页上input的一些数据。 我想知道的是为什么'POST'不能获取数据。 var fs = require('fs'); var ejs = require('ejs'); var http = require('http'); var mysql = require('mysql'); var express = require('express'); var client = mysql.createConnection({ user: 'root', password: 'PASSWORD', database: 'Company' }); var app = express(); http.createServer(app).listen(8080, function(){ console.log('Server running at http://127.0.0.1:8080'); }); […]

Mysql-nodejs嵌套查询

它说,不能读取socket.broadcast行中未定义的属性authorid 。 setInterval(function(){ db.query("select * from `notifications`", function(err, rows){ if (rows.length>temp){ for (var i=temp; i<rows.length; i++){ console.log('sending room post', rows[i].authorid); db.query("select `name` from `users` where `id`=?", [rows[i].authorid ], function(err, name){ name=name[0].name; socket.broadcast.to(rows[i].authorid).emit('new notification', { authorname:name, dpid:rows[i].followid, read:rows[i].read, type:rows[i].type, followstatus:1 }); }); } temp=rows.length; } }) }, 3000);

NodeJS – 如何将MySQL连接从主进程传递给subprocess?

我尝试了以下服务器+工人代码,但它根本无法工作。 server.js: var net = require('net'); var mysql = require('mysql'); var cp = require('child_process'); var serverPort=20460; var connection = mysql.createConnection({ database : 'test', host : 'localhost', user : 'root', password : '' }); var server = net.createServer(function (socket){ socket.on('data',function(data){ console.log("Server received: ",data); var child = cp.fork('./worker'); child.send({'connection': connection}); }); }); connection.connect(function(err, two){ if (!err) { […]