铬开发工具打开时的双重请求

我有一个奇怪的问题,我有一个非常简单的节点/ expressjs应用程序(我有一个更复杂的,但这个简单的例子显示的问题)。 这个应用程序有三个路线如下所示: var i = 0; app.route('/login') .get(function(req, res){ console.log('login', ++i); res.send('login'); }) app.route('/test') .get(function(req, res){ console.log('test', ++i); res.send('test'); }) app.route('/') .get(function(req, res){ console.log('index', ++i); res.send('index'); }) 很简单。 任何时候这些路由之一被请求'我'是递增和logging,并且它工作正常,除非当开发工具是开放的。 当开发工具打开请求login或testing将被要求两次。 这里是日志的结果: 15:45:30 web.1 | index 1 15:45:33 web.1 | login 2 15:45:34 web.1 | login 3 15:45:37 web.1 | test 4 15:45:37 web.1 | […]

每个HTTP /会话请求的GLOBAL数据?

题: 有没有办法在每个会话/ http请求中创build一个variables存储? 该variables必须是全局可访问的,并且不同的每个HTTP请求/连接/会话,并且不需要从function传递到function。 例如(只是为了说明): setVariableThatCanBeAccessedByThisHTTPRequestOnly( 'a string data' ); 任何东西都应该可以工作,但我宁愿远离将它从function传递到function。 //I'm trying to get rid of passing req parameter to all custom functions. //I'd like to store it in a variable somehow, that it can be accessed globally, but only within that session/request. exports.functionName = function( req, res ) { customFunctionThatRequiresReq( req ); }; […]

在JavaScript中使用一个API,使用JS最大整数以上的ID

我正在构build一个从Vine API中提取数据的Node后端,并将其返回到我的前端。 根据这个问题,post和用户的ID是Numbertypes的,他们经常超过javascript可以支持的最大整数。 来自API的示例ID是934416748524998656 。 当我在前端使用JSON.parse时,它会将最后两位数字replace为0,因为它不能读取那么高的数字。当我尝试使用特定的ID与API对话时,会导致问题,因为它现在不会识别ID。 有没有什么东西可以用另一种语言创build一个新的服务,我可以使用这些ID来处理? 我尝试使用toString()来解释数字为string,而只是创build一个已经格式不正确的数字的string。 谢谢你的帮助

node_modules中.bin文件夹的用途是什么?

今天有一位同事向我解释了如何创buildnodejs项目,我发现在./node_modules中有一个名为.bin的不可见文件夹。 我必须说,在添加到“bootcamp”和“bower”工具之后,我发现了这一点。 什么是.bin目的? 它创造了什么?

读取node.js中的缓冲区对象

我试图通过这个节点模块称为Wreck获取HTML页面 获取数据应该非常容易,但我无法获取它们 'use strict'; var Wreck = require('wreck'); var url = 'http://www.google.it'; var callback = function(err, response, payload){ Wreck.read(response, null, function(err, body){ //here print out the html page }); }; Wreck.get(url, callback); 这里上面的一个简单的脚本只是开发人员的自述文件的副本。 根据文档body应该返回一个缓冲区对象,但我怎么能读取内部的身体对象? 我已阅读使用toJSON或toString(),但我没有得到任何结果

如何从MAC机器的命令提示符启动Appium服务器?

我使用appium自动化ios原生移动应用程序。 到现在为止,我通过单击启动button从Appium GUI启动服务器。 现在我想从命令提示符启动服务器。 我可以通过以下步骤在Windows机器上做同样的事情: 启动Node.js命令提示符 导航至Appium bin文件夹 使用命令node appium 我遇到了如何在Mac上启动Node.js命令提示符的问题。 你能告诉我如何从Mac上的命令提示符启动Appium服务器。

如果testing失败,如何让Mocha在源文件中显示正确的行号?

我正在使用Mocha进行NodeJStesting,当由于源代码抛出错误而导致testing失败时(例如“ TypeError: Cannot read property 'prop' of null ”),显示的堆栈跟踪中的行号是错误的(它们与原始源文件不匹配,但是更大)。 1) MyApp should do something: TypeError: Cannot read property 'prop' of null at MyApp.<anonymous> (/path/to/my-project/lib/my-project.js:515:93) at MyApp.build (/path/to/my-project/lib/my-project.js:774:16) at Context.<anonymous> (/path/to/my-project/test/test.js:62:67) at Test.Runnable.run (/path/to/my-project/node_modules/mocha/lib/runnable.js:216:15) at Runner.runTest (/path/to/my-project/node_modules/mocha/lib/runner.js:373:10) at /path/to/my-project/node_modules/mocha/lib/runner.js:451:12 at next (/path/to/my-project/node_modules/mocha/lib/runner.js:298:14) at /path/to/my-project/node_modules/mocha/lib/runner.js:308:7 at next (/path/to/my-project/node_modules/mocha/lib/runner.js:246:23) at Object._onImmediate (/path/to/my-project/node_modules/mocha/lib/runner.js:275:5) at processImmediate [as _immediateCallback] (timers.js:330:15) (这里my-project.js只有279行!) […]

NodeJS如何获取服务器中的数据,通过POST从jquery ajax调用发送

我的客户正在打ajax电话 {{ function callNode(){ console.log("I am called"); var data = {"emailId":"gopal@gmail.com"}; $.ajax({ type: 'POST', data: JSON.stringify(data), /* data: { blob: {wob:"1",job:"2", ar:[1,2,{a:'b'}]} },*/ contentType: "application/javascript", //contentType: "application/x-www-form-urlencoded", dataType:'json', url: 'http://localhost:3000/notification', success: function(data) { console.log('success'); console.log(JSON.stringify(data)); }, error: function(error) { console.log("some error in fetching the notifications"); } }); } }} 我能够在我的app.js得到这个请求,但无法获得我传递的数据我试图search,但没有任何工作 {{ app.post('/notification', function(req, res) { […]

使用JavaScript API设置S3对象到期(用于删除)

我正在使用适用于Amazon AWS S3的Node.js JavaScript API,并且希望将对象设置为在创build对象后指定的天数过期。 也就是说,如果我创build并上传了一个新对象,我希望它从现在起100天左右自动删除它自己。 是否可以设置每个对象的删除到期? 文件表明这可能是可能的: Amazon S3提供了一个到期操作,您可以在生命周期configuration中指定过期操作以使对象过期。 … 当一个对象到达其生命周期结束时,Amazon S3会将其排队并将其移除,并将其asynchronous移除。 到期date与Amazon S3删除对象的date之间可能存在延迟。 与过期的对象相关联的存储时间不收取费用。 但是,似乎我必须在桶configuration中设置此过期,而不是在上传/创build它们时按对象。 JavaScript SDK文档指出,我可以在创build对象时设置Expires参数,但是当S3为后续GET请求返回对象时,这似乎是针对Expires HTTP标头的。 有没有办法在创build对象时设置对象的到期date? s3.putObject({ Bucket: config.s3.bucketName, Key: s3Key, Body: objBuffer, ACL: 'public-read', ContentType: 'image/jpeg', StorageClass: 'REDUCED_REDUNDANCY', // Some option here for setting expiration/deletion date? }, function () { console.log(arguments); });

有没有办法使用node.js读取文件元数据

有没有人知道我可以使用node.js读取文件元数据的方法? 例如,我想读取jpeg文件(在Windows机器上)的“详细信息”选项卡上的“注释”属性。 请参阅下面的图片,了解我正在尝试从文件的元数据中读取的内容。