Tag: 环境variables

工头Multiline ENVvariables错误

我试图通过使用\n在我的.env文件.env我的pem文件的内容作为一个string传递给pem文件中的表单以便在ENVvariables中使用。 但是,这个问题是,我得到这个variables的错误,我不知道这是什么意思,但我看到有问题closures允许多行,所以我不知道为什么这个错误存在。 这里是我的terminal命令nf run nodemon app.js 这里是版本1.4.1 以下是我的.env文件中设置的pem文件的格式: CF_PRIVATE_KEY="—–BEGIN RSA PRIVATE KEY—–\n MIIEpAIBAAKCAQEAm7NA5731034RiKsEkuBTrkoBidwFD7hsdfaiohdsfahsdfL99Iw5R4uTA\n jpPJTOUHTJNMSNF472h42ofnlNflnriNBTPOHNJFRPNSRPFNSRpfPRNFORNFPRSNFpSNFFPNf\n —–END RSA PRIVATE KEY—–" 这是错误信息: /Users/user/.nvm/versions/node/v4.3.2/lib/node_modules/foreman/lib/envs.js:38 case '"': return /^"([^"]*)"/.exec(val)[1]; ^ TypeError: Cannot read property '1' of null at parseValue (/Users/user/.nvm/versions/node/v4.3.2/lib/node_modules/foreman/lib/envs.js:38:46)

将subprocess的输出保存在NodeJS的父进程的variables中

我想在NodeJS中启动一个subprocess并将其输出保存到一个variables中。 以下代码将其提供给stdout: require("child_process").execSync("echo Hello World", {"stdio": "inherit"}); 我有一个类似于这个代码的东西: var test; require("child_process").execSync("echo Hello World", {"stdio": "test"}); console.log(test); test的价值应该是Hello World 。 哪个不行,因为"test"不是有效的stdio值。 也许这是可能的使用环境variables,但是我没有find如何修改它们在subprocess中的结果仍然是可见的父。

在JavaScript项目中使用NODE_ENV和多个环境

我使用Express服务器上运行的许多项目,无论它们是前端(即React.js)代码库还是服务器端Node.js codebases 。 很多时候我会用前端codebases加载基于NODE_ENV条件configuration,比如前端发出请求的restful API的URL。 我也多次使用NODE_ENV来有条件地加载诸如服务器端Node.js项目的DBconfiguration之类的东西。 在一个由开发,分期和生产(3个环境)组成的项目中,我通常会设置我的代码来加载基于NODE_ENV被设置为3个环境(也可能是“本地”)中的任何一个的configuration。 我最近正在研究一个将生产环境称为“生活”的项目。 当我决定为这个环境设置NODE_ENV = live时,一位同事指出了这种方法的一个主要缺陷。 看起来Express和Node.js的其他一些库会locking您将要使用“production”或“development”作为NODE_ENV并且为您的环境使用其他名称可能会产生意想不到的效果。 例如 ,Express需要NODE_ENV=production才能在“生产”模式下运行。 根据快速文档“testing表明,只是这样做可以提高三倍的应用程序性能!” 基本上,我很好奇,是否将NODE_ENV设置为“开发”和“生产”之外的常见做法,就像我在项目中一样。 我觉得,如果我要将代码部署到云上的开发环境或登台环境中,我认为他们不应该以与生产环境不同的快速“模式”运行。 维护与NODE_ENV分开的configuration更有意义吗? 例如 ,将您的configuration从APP_ENV之类的variables中NODE_ENV是否APP_ENV ,同时确保NODE_ENV对于像Express这样的frameworks/packages来说是“开发”或“生产”。

can'ffind“process.env.NODE_ENV”

每当我在configuration文件中看到variablesprocess.env.NODE_ENV总是困扰我,特别是webpack.config.js 。 我在哪里可以find这个? 因为有时候我想改变它的价值而不是development 。

在JavaScript中设置一个variables(node.js)

我有一个脚本,我这样运行: node script.js 从script.js中,我想通过一个variables返回到shell继续使用。 如果你第一次没有得到它,我会再说一遍:基本上,运行JS来创build一个variables,然后我想用这个variables作为shell命令。 我试图查找这个,我没有太多的运气搞清楚。 简单地做console.log(foo = bar)不起作用。

在响应服务器端渲染时使用process.env

我有一个反应的应用程序,工作得很好,客户端,现在试图让它在服务器端工作。 我正在使用create-react-app样板: https : //github.com/facebookincubator/create-react-app 我遇到了一个问题,我在.env中存储了一些环境variables,但是在服务器上我无法访问这些variables。 所以像axios.get(process.env.API_URL + 'something')行将通过404,因为process.env.API_URL是undefined 。 这是我的理解.env是我应该使用这样的东西的文件。 我错了吗? 我应该使用另一种方法来存储常见的环境variables? 或者有什么方法让节点服务器识别这些值?

在NodeJS中存储临时variables

我刚开始尝试使用NodeJS和socket.io创build一个简单的多人在线游戏(类似于在线国际象棋的想法)。 我很抱歉,如果我的问题的答案是真的很明显,因为我试着用googlesearch,但我认为我错过了一些关键的理解。 基本上,我需要在应用程序运行时在服务器上存储一些东西。 例如: 我需要存储哪些套接字连接是主机,哪些是玩家。 我需要存储每个游戏的当前状态(例如在国际象棋中,棋子在哪里,轮到谁了) 能够存储所有的socket.io“房间”也是很好的。 请随时回答这个问题,以下信息仅供参考。 有几件事我已经尝试或在网上看到: 当我谷歌与“持久性”的东西,我得到的基础上保存到数据库的结果或东西,我不认为这是我想要的。 我已经尝试在NodeJS文件的顶部添加variables,就像在普通的JS文件中使用全局variables一样。 这似乎工作,但只是感觉错了,如果有人可以解释这是如何工作,这将是伟大的。 我也看到了所谓的会话variables,我想这可能是我想要的。 我看到的应用程序只是将信息传递到客户端和服务器之间,但我宁愿客户端也不能只编辑信息来“破解”游戏。 任何帮助或解释赞赏。

全局variables值在堆栈超过by node.js中的无限想念recursion后神秘地重置

我想在node.js(v0.4.10)中使用全局值递增来计算无限recursion函数的步骤。 然而,伯爵总是假装为零 > c = 0 > (function f() { c++; console.log(c); f() })(); 1 2 … 18648 RangeError: Maximum call stack size exceeded > c 0 从函数内部将c值logging到控制台显示值实际上是递增的,但是不知何故它在堆栈事故之后最终被重置。 即使使用global.c而不是c 。 这是正确的行为吗? 这里发生了什么? 例如在铬(v14)中, c按预期保持最终计数。 UPDATE 原来以上只在交互模式下才有效。 当代码从文件中被执行,并且try-catch块中包含的函数(以防止提前退出)时,c值是正确的。 c = 0; try { (function f() { c++; f() })(); } catch(e) {}; console.log(c); 然而,交互式node.js和铬javascript控制台之间还是有一些差别,其中的值存在未处理的exception

exec和PATH上的heroku与buildpack

我使用这个buildpack为了在heroku上使用casperjs 。 一旦我的应用程序创build,我检查我的PATH $ heroku config:get PATH /usr/local/bin:/usr/bin:/bin:/app/vendor/phantomjs/bin:/app/vendor/casperjs/bin 好的,casperjs在这里! – Procfile scraper: node scraper.js scraper.js var exec = require('child_process').exec; exec('casperjs casper-script.js'); – 但是,当我启动scraper进程时,它崩溃与以下日志: 2012-10-09T02:23:38+00:00 heroku[scraper.1]: Starting process with command `node scraper.js` 2012-10-09T02:23:39+00:00 app[scraper.1]: bash: node: command not found 为什么exec没有findPATH中的casperjs ? PS:我尝试过spawn但没有更多的运气… [编辑]:一个可testing的要点https://gist.github.com/3856317

Node.js,表示可变权重

我想知道在express中声明variables的最好方法。 只是我的应用程序的variables var app = express(); app.fs = require('fs'); app.WebSocketServer = require('ws').Server app.wss = new app.WebSocketServer({ port: 8080 }) app.mongoose = require('mongoose'); app.async = require('async'); 或者每次我需要一个新的variables时都要初始化 var app = express(); var fs = require('fs'); var WebSocketServer = require('ws').Server var wss = new WebSocketServer({ port: 8080 }) var mongoose = require('mongoose'); var async = require('async'); 我认为第一种方法是更好的服务器,但我害怕重写快速方法。 […]