node.js和浏览器javascript中的通用模块

我正在开发一个node.js应用程序,并且我想在客户端使用我为node.js服务器创build的模块。 一个示例模块是circle.js: var PI = Math.PI; exports.area = function (r) { return PI * r * r; }; exports.circumference = function (r) { return 2 * PI * r; }; 你做一个简单的 var circle = require('./circle') 在节点中使用它。 我怎么能在我的客户端JavaScript的Web目录中使用相同的文件?

垃圾收集与node.js

我很好奇嵌套函数的node.js模式如何与v8的垃圾收集器一起工作。 这是一个简单的例子 readfile("blah", function(str) { var val = getvaluefromstr(str); function restofprogram(val2) { … } (val) }) 如果restofprogram长时间运行,是不是意味着str永远不会收集垃圾? 我的理解是,对于节点,最终会嵌套function。 如果restofprogram在外部声明,这是否会收集垃圾,所以str不能在范围内。 这是一个推荐的做法? 编辑我没有打算使问题变得复杂。 那只是粗心,所以我修改了它。

npm peer与grunt和flatiron peer的依赖问题

在发布这个问题的时候,我想出了答案,但是我会在这里发帖以防别人帮忙,也许有人可以帮忙解释发生了什么事情。 当我运行: sudo npm install -g grunt 它的最后部分说: /usr/bin/grunt -> /usr/lib/node_modules/grunt/bin/grunt npm ERR! peerinvalid The package flatiron does not satisfy its siblings' peerDependencies requirements! npm ERR! peerinvalid Peer flatiron-cli-config@0.1.3 wants flatiron@~0.1.9 npm ERR! peerinvalid Peer flatiron-cli-users@0.1.1 wants flatiron@~0.1.9 npm ERR! System Linux 3.5.0-23-generic npm ERR! command "nodejs" "/usr/bin/npm" "install" "-g" "grunt" npm ERR! cwd /home/explunit […]

如何在Express 4.0中发送Flash消息?

所以我的web应用程序需要身份validation,并且我有一个注册页面,如果用户尝试使用已经在数据库中的电子邮件注册,我想向他们显示错误消息。 我试图做这个在html端使用这个代码: <% if (message.length > 0) { %> <div class="alert alert-danger"><%= message %></div> <% } %> 在我的路线中这样做: router.get('/signup', function(req, res) { res.render('/signup', { message: req.flash('signupMessage') }); }); 我已经尝试设置configuration的东西沿线: app.configure(function() { app.use(express.session({ secret : 'keyboard cat' })); }); 但是这给了我一个TypeError: 12:11:38 web.1 | app.configure(function() { 12:11:38 web.1 | ^ 12:11:38 web.1 | TypeError: Object function (req, […]

SocketIO-GET http:// localhost:3000 / socket.io /?EIO = 3&transport = polling&t = 1418187395022-0 404(Not Found)

我使用express的socketIO。 在我的项目中,我有一个login页面和一个主页。 当我成功login我导航到本地主机:3000 /家,我得到这个错误: GET http://localhost:3000/socket.io/?EIO=3&transport=polling&t=1418187395022-0 404 (Not Found) 我没有做任何修改我的app.js(由快递创build的项目)。 Index.js: var express = require('express'); var router = express.Router(); var http = require('http'); var fs = require('fs'); var io = require('socket.io')(http); /* GET home page. */ router.get('/', function(req, res) { res.render('index', { title: 'Express' }); }); router.get('/home', function(req, res) { res.render('home', { title: 'Express' }); […]

如何在WebStorm中debuggingangular度量angular器testing

在WebStorm中有一种运行和debugging量angular器networkingtesting的方法。 我只想在这里分享这个答案

我如何在heroku命令行上调用npm(安装bower组件)?

Bower是用于客户端JavaScript的,npm是服务器端的,读取一个component.json文件来识别应该在部署时获取的依赖关系,所以我很高兴它可以在slug编译的时候运行。 不幸的是,我不能从Heroku控制台或一次性命令( heroku run "npm help" )( heroku run bash – > npm help )调用npm或bower,因为它可能是ruby的耙子。 我已经把npm和node(最新/ x版本)放在我的package.json但在引擎部分,而不是依赖。 我认为这可以通过定制节点构build包来解决,但是我认为这个过于繁重的任务只是为了激活一些显而易见的东西。

简单的方法来存储Node.js下的JSON

我正在寻找一个超级简单的方式来存储一个JSON数组在Node.js下的一个持久的方式。 它不需要有任何特殊的function。 我只想放置一个JSON对象,并能够在下一次服务器重新启动时读取它。 Mongo.db或Couch.db似乎是一个矫枉过正的目的。

使用encryption模块的streamfunction获取文件的散列(即:没有hash.update和hash.digest)

node.js的crypto模块(至less在写这篇文章的时候)仍然不被认为是稳定的,所以API可能会改变。 事实上,互联网上每个人用来获取文件的散列(md5,sha1,…)的方法都被认为是遗留的(从Hash类的文档中)(注意:我的重点): 类:哈希 用于创build数据散列摘要的类。 这是一个可读写的stream。 写入的数据用于计算散列。 一旦stream的可写端被结束,使用read()方法来获得计算的散列摘要。 传统的更新和摘要方法也被支持。 由crypto.createHash返回。 尽pipehash.update和hash.digest被认为是遗留的,但是在引用片段上方显示的示例正在使用它们。 在不使用这些遗留方法的情况下获取哈希的正确方法是什么?

在快速框架中的会话中得到奇怪的错误

我是新来expression框架,这是我在server.js文件中: // Module dependencies. var application_root = __dirname, express = require( 'express' ), //Web framework path = require( 'path' ), //Utilities for dealing with file paths mongoose = require( 'mongoose' ); //MongoDB integration //Create server var app = express(); // Configure server app.configure( function() { app.use( express.bodyParser() ); app.use( express.methodOverride() ); app.use( app.router ); app.use(express.session({secret:'thisismysupersecret'})); […]