Tag: 节点模块

createConnection如何与mysql中的nodeJS一起使用?

createConnection是做什么的? var connection = mysql.createConnection({ host : 'example.org', user : 'bob', password : 'secret' }); 我正在使用mysql模块在nodeJS中编写应用程序。 我有一些自己的模块,例如authentication ,它们定义需要数据库连接。 问题是:如果我有多个模块,我使用这个方法来创build连接,它是否会为我创build一个新的连接或使用第一个? 如果创build,它创build它第一次加载我自己的模块或每次? 哦,如果它创造什么时候会被摧毁? 以下是我在authentication模块中的使用方法: var config = require('./config.js'); var mysql = require('mysql'); var connection = mysql.createConnection(config.connectionString); exports.login = function() … 我对模块和自己的模块如何工作有一些基本的理解错误。 感谢您的答案。

环回 – 隐藏请求访问令牌

我使用Loopback API时遇到安全问题。 问题是Access Token可以通过查询URL / Header访问。 我可以隐藏访问令牌,当我调用Loopback API或者是否有任何设置,我可以把身体与POSTfunction的访问令牌? 谢谢。

改善express.js模块的使用

有一些小东西,但它让我很烦恼。 当你想使用一个节点模块时,你必须手动安装它,需要它并将其添加到package.json中。 如果你不想使用它,那倒是一回事。 是否有一个工具,安装/删除/从node_modules&添加/删除/从package.json自动后需要模块。 这是简单的,如果不是,现在必须存在。

从节点模块获取像sytax的jQuery

我正在构build我的第一个节点模块,我希望能得到类似于jQuery的东西 $(searchItem) 所以代码可能看起来像 var $$ = require(“myModule”); $$(search).doAction(); 等等,而不是 。$$ doAction(search); 是否有可能在模块中返回这样的“根函数”? 这样做有没有危险? ——————更新Laurent说这是可行的,因为下划线是这样做的,而且它是安全的,现在是如何?? ———– ———————– 我已经更新我的代码到我的模块开始自我引用function(复制下划线) (function(){ var fs = require(“fs”); 的console.log( “开始”); var root = this; var config = JSON.parse(fs.readFileSync(“./ config.json”)); var $$ = function(obj){ 如果(!OBJ){ 返回configuration; } else { 返回obj; } } })调用(这) 然后在我的页面 要求( “MyModule的”); 的console.log($$( “testing”)); 希望控制台会logging“testing”,但不幸的是我得到$$("test")不是一个函数。 ———————————— update ————- […]

node.js中模块模式的最佳实践

我一直在转换一些旧的JavaScript在node.js模块中使用,它让我思考模块模式选项。 我见过一些使用出口的结构。 module.exports,甚至原型,它让我想知道哪种方法被认为是最佳实践,为什么? 这里是我用两种方式编写的代码中的减less模块示例。 选项1: var Helper = function() {}; Helper.latin_map = {"Á":"A","Ă":"A","Ắ":"A","Ặ":"A","Ằ":"A"}; Helper.prototype.urlise = function(orgString){ var lower = orgString.toLowerCase(); var latinised = lower.replace(/[^A-Za-z0-9\[\] ]/g, function(a) { return Helper.latin_map[a] || a; }); return latinised.replace(/\s+/g, '-') } module.exports = new Helper(); 选项2: var latin_map = {"Á":"A","Ă":"A","Ắ":"A","Ặ":"A","Ằ":"A"}; module.exports = { urlise : function(orgString){ var lower = orgString.toLowerCase(); […]

在Node中调用child_process.exec,就像在特定的文件夹中执行一样

我正在使用以下命令在nodeJS中执行CLI命令 var cp = require('child_process'); cp.exec('foocommand', callback); 但是,在当前文件夹节点运行时,foocommand正在执行。 我怎样才能使它执行,就像它从一个不同的文件夹被调用?

节点模块在错误后调用callback参数

我正在试图通过受欢迎的LearnYouNode程序来教自己的Node。 我正在练习6,题为“ Make it Modular ”。 基本上我必须创build一个模块,然后在我的主要program.js需要它,并满足一些条件。 其中一个条件表示,如果发生错误,我必须调用callback函数,只传递错误对象并将第二个参数null 。 这是我的模块代码到目前为止: var fs = require('fs'); // require file stream module var pathMod = require('path'); // require path module var i = 0; // local variable var fileName = []; // local array variable module.exports = function (path, ext, callback) { return { process: function () { […]

当航行升降时,orm无法载入

我正在使用"sails": "~0.12.1" 。 我正在连接到一个MySQL数据库。 我可以连接到MySQL Workbench上的数据库,所以数据库正在工作。 当我尝试sails lift我得到这个错误: info: Starting app… error: A hook (`orm`) failed to load! error: SyntaxError: Unexpected identifier at exports.runInThisContext (vm.js:53:16) at Module._compile (module.js:414:25) at Object.Module._extensions..js (module.js:442:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:311:12) at Module.require (module.js:366:17) at require (module.js:385:17) at /node_modules/include-all/index.js:129:29 at Array.forEach (native) at requireAll (/node_modules/include-all/index.js:44:9) at buildDictionary (/node_modules/sails/node_modules/sails-build-dictionary/index.js:68:14) at […]

.gitignore和node_modules

我想弄清楚在git中处理node_modules的最好方法。 从我读到的,有两个select: A.将所有node_modules与我的项目一起保存在git存储库中。 这样,克隆我的项目的人不必安装任何模块。 B.不要在git仓库中保留任何node_modules,即有一个包含“node_modules”的“.gitignore”文件。 但是,在一些项目中,我没有看到这两种select。 例如,在这个node.js项目中 ,没有node_modules,也没有.gitignore文件… 当我叉这个回购,做npm安装 ,该文件夹是由node_modules填充,因为没有.gitignore,git试图提交他们… 我究竟做错了什么?

将C ++虚拟方法绑定到具有覆盖function的js

假设我有一个C ++类: class cRenderer { … virtual void draw(); … } 这是渲染引擎的一部分,所以任何inheritancecRenderer C ++类cRenderer可以重写draw方法,并在屏幕上绘制东西。 问题是我如何实现与v8绑定相同的行为(这将最终是一个Node.js模块)? 有人可能会说,我可以这样做: class cApplication : public cRenderer, public node::ObjectWrap { … define bindings … } 然后在我的JavaScript我做了这样的事情: var app = new cApplication(); var oldDraw = app.draw; //saving old instance of draw app.draw = function() { … do drawing api calls … oldDraw(); […]