在Elastic Beanstalk上通过.ebextensions安装git

我收到了部署到Elastic Beanstalk的错误,因为实例上没有git。 我的package.json中的一个依赖依赖于一个git仓库,需要git clone 。 Git没有安装在实例上。 我尝试通过.ebextensions .conf文件进行安装,同时通过yum进行部署,但是当我将ssh移入实例时,它不在那里。 问题是:在该实例上调用npm install之前,在Elastic Beanstalk上运行的Linux实例上安装和运行git的正确方法是什么? 以下是显示错误的日志: [2015-04-18T09:00:02.815Z] ERROR [1777] : Command execution failed: Activity failed. (ElasticBeanstalk::ActivityFatalError) caused by: + /opt/elasticbeanstalk/containerfiles/ebnode.py –action npm-install npm WARN package.json amity-api-v2@2.0.0 No repository field. npm WARN package.json amity-api-v2@2.0.0 No README data npm WARN `git config –get remote.origin.url` returned wrong result (https://github.com/awslabs/dynamodb-document-js-sdk) undefined npm WARN […]

Webpack:找不到bundle.js

我终于得到了他的开发服务器运行,我在屏幕上得到的东西。 我已经为NPM设置了一个“启动”脚本,如下所示: "start": "webpack-dev-server –content-base app" 我收到一个错误: http://localhost:8080/bundle.js Failed to load resource: the server responded with a status of 404 (Not Found) 我的文件夹设置如下: appDir ->app ->node_modules webpack.config.js package.json 我的webpack.config.js: module.exports = { context: __dirname + '/app', entry: './index.js', output: { path: __dirname + '/app', filename: './bundle.js' } } 你能告诉什么是错的吗?

mongoose默认值等于其他值

对于我的项目,我创build了一个userSchema,其简化如下所示: var userSchema = new Schema({ _id: String, screenname: {type: String, required: false, default: "equal _id"}, }); 用户有一个_id,这也是他的用户名。 一切工作到目前为止,直到我试图添加一个额外的字段screenname。 我想要的是当用户创build一个帐户时,他的屏幕名称等于_id的值。 稍后他可以调整它,但默认情况下,它应该等于_id的值。 我也试过了: screenname: {type: String, required: false, default: _id}, 但比课堂_id没有定义。 我应该如何设置默认值等于另一个值?

将可选parameter passing给require()

所以,我有这个问题 – 当我有JavaScript或节点的问题不可避免地是我的编码是问题;) 所以在嘲笑的风险,这是问题: 我有一个模块,它有一个可选的参数configuration 使用标准模式,这是我有: module.exports = function(opts){ return { // module instance }; } 在调用代码中有这个 var foo = require('bar')({option: value}) 如果没有选项可以通过,代码如下所示 var foo = require('bar')({}) 这有点看起来丑陋 所以,我想这样做 var foo = require('bar') 这不起作用,因为出口是函数调用 所以,到这个问题的肉 a)有没有办法达到这个崇高的目标? b)将parameter passing给模块有更好的模式吗? 非常感谢 – 而且我希望一旦笑声过去了,您将能够以我的方式发送一些帮助:)

错误:req.flash()需要会话

我是新来的节点,我敢肯定,我已经build立了中间件,并表示使用Flash消息,但我仍然得到错误: Error: req.flash() requires sessions build立 //express.js var flash = require('connect-flash') module.exports = function (app, config, passport) { app.use(flash()); }; //route js exports.loginGet = function (req, res) { res.render('users/login', { title: 'Login', message: req.flash('error') //error in question }); }; 我还能做些什么来确保正确设置所有设置并使其正常工作?

SailsJS水线与蓝鸟承诺

当使用水线ORM时,如果我想要使用蓝鸟许诺api这默认发货如何将处理返回到控制器。 以下是代码: module.exports = { //Authenticate auth: function (req, res) { user = req.allParams(); //Authenticate User.authenticate(user, function (response) { console.log(response); if (response == true) { res.send('Authenticated'); } else { res.send('Failed'); } }); } }; module.exports = { // Attributes // Authenticate a user authenticate: function (req, cb) { User.findOne({ username: req.username }) .then(function (user) { […]

如何比较NodeJS中的缓冲区对象?

我是Node新手,开始播放一些节点代码。 我遇到的问题是如何直接比较NodeJS中的Buffer对象? 这里“直接”意味着不使用buffer.toString()方法或迭代整个缓冲区。 这里是一个例子: var buf1 = new Buffer("abc"); var buf2 = new Buffer("abc"); console.log(buf1===buf2); //result is false Buffer.compare(buf1,buf2);//lengthy error message 感谢Derek 更新:我正在使用版本“v0.10.38”,这里是消息,如果我使用buf1.compare(buf2): >buf1.compare(buf2) TypeError: Object abc has no method 'compare' at repl:1:7 at REPLServer.self.eval (repl.js:110:21) at Interface.<anonymous> (repl.js:239:12) at Interface.emit (events.js:95:17) at Interface._onLine (readline.js:203:10) at Interface._line (readline.js:532:8) at Interface._ttyWrite (readline.js:761:14) at ReadStream.onkeypress (readline.js:100:10) at […]

如何使用node.js修剪string?

我正在尝试修剪string。 我谷歌它修剪。 我得到的提示。 name.trim(); – 无法识别trim()function npm install – 保存string var S = require('string'); S('hello ').trim().s; — this also same issue 你能帮助我什么是上述方法的问题,或者我错过了什么?

手动呼叫护照进行身份validation

我使用护照开发了一个由oauth2身份validation保护的宁静的nodeJS API。 var express = require('express'); var passport = require('passport'); var port = process.env.PORT || 8080; var app = express(); app.use(passport.initialize()); // Create our Express router var router = express.Router(); var creatureController = require('./controllers/creature'); router.route('/creature').get(passport.authenticate('accessToken', {session: false}), creatureController.getProfile); 在这种情况下,路由受到保护,并且需要发送有效令牌才能访问路由。 我想find一种方法来手动validation我的“用户”,通过调用一个函数,它采取我想要authentication的用户的用户名和密码。

React Flux调度器vs Node.js EventEmitter – 可扩展?

当你使用Node的EventEmitter时,你订阅一个事件。 您的callback仅在特定事件启动时执行: eventBus.on('some-event', function(data){ // data is specific to 'some-event' }); 在Flux中,您向调度员注册您的商店,然后当每个事件被调度时,您的商店被调用。 商店的任务是过滤每一个事件,并确定事件对商店是否重要: eventBus.register(function(data){ switch(data.type){ case 'some-event': // now data is specific to 'some-event' break; } }); 主持人在录像中说: 实际上,所有商店都会收到所有的动作,这就是保持可扩展性的原因。“ 题 为什么以及如何向每个商店发送每个动作(大概)比只向特定商店发送动作更具可扩展性?