标签: iojs

React + Node.js的项目结构应该是什么?

有点广泛的问题,但是在JS世界的所有这些趋势中,有时很难找到关于这些简单事物的信息.在这种项目中组织文件和文件夹的更好方法是什么?有一些来自Facebook的语言服务器示例,但它适用于非常基本的项目.

另请参阅git上的 React示例

但这些例子只是为了玩弄.

目标是 - 明确区分客户端和服务器组件.将它们移动到单独的文件夹树中.也有类似app的结构(例如Django)

所以主要的问题是:

将nodejs/iojs服务器端与React客户端组件分开并将它们放在一个项目中的正确方法是什么?

项目:

  • nodejs服务器,用于用户可以在集线器/主题中创建自己的文章的站点.
  • 在前端反应.SPA.
  • 加载 - 大约10 000个用户.
  • 可通过Mongoose访问的MongoDb数据库

javascript node.js reactjs iojs

15
推荐指数
3
解决办法
1万
查看次数

Nodejs:将index.js用于EXPORTS的好习惯?

我看到了一些我继承的代码的模式.每个目录都有自己的JS文件,但也有一个index.js实际上从其他JS文件导出项目.

我认为这样做是为了让你可以准确地看到你要导出的内容,因为主要的导出是在index.js中,而主要代码是在其他js文件或文件中.

它是否正确?这种模式叫什么?

我应该继续使用这种模式吗?

javascript node.js iojs

9
推荐指数
3
解决办法
9636
查看次数

从iojs升级到nodejs v4.4.4后,自签名SSL无效

我在我的应用程序中使用iojs和koa,最近我决定将iojs更新为nodejs v4.4.4.更新非常顺利,我的应用程序立即运行.问题是我在我的开发机器上使用自签名SSL证书,在我更新到nodejs后,当我尝试访问网站时收到以下消息:

此站点无法提供安全连接

localhost使用不受支持的协议.

ERR_SSL_VERSION_OR_CIPHER_MISMATCH

客户端和服务器不支持通用SSL协议版本或密码套件.当服务器需要不再被认为是安全的RC4时,可能会导致这种情况.

我正在使用nvm所以我尝试切换到iojs并且该网站再次运行.

经过一些阅读后,我发现我必须更新openssl到版本1.0.2g而不是1.0.1g我用来创建.key.crt文件的版本.所以我更新openssl并生成了新的密钥和证书文件,如下所示:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt

可悲的是,这并没有解决问题.

这是我用来在服务器上设置https的代码:

let sslOptions = {
            key: fs.readFileSync('/etc/apache2/ssl/apache.key'),
            cert: fs.readFileSync('/etc/apache2/ssl/apache.crt')
                 };

let server = require('https').createServer(sslOptions, app.callback())
Run Code Online (Sandbox Code Playgroud)

难道我做错了什么?为什么它适用于iojs并且不能与nodejs一起使用?

ssl openssl node.js koa iojs

6
推荐指数
1
解决办法
2983
查看次数

NodeJS:事件和函数之间的区别?

我是Node的新手,我正在努力理解事件和函数之间的主要区别.两者都需要被触发,所以如果我们不得不触发它,为什么我们需要一个事件呢?

与触发功能有什么不同?

示例代码:

var events = require('events');
var eventEmitter = new events.EventEmitter();

eventEmitter.on('event1', function () {
    console.log('Event 1 executed.');
    eventEmitter.emit('event2');
});

eventEmitter.on('event2', function() {
    console.log('Event 2 executed.');
});

eventEmitter.emit('event1');
console.log('Program Ended.');
Run Code Online (Sandbox Code Playgroud)

我们可以通过函数实现相同的结果,对吧?

我确信这在Node中有一些重要的意义(否则它不会存在,哈哈),但我很难理解它.

帮助赞赏!:)

javascript event-handling node.js dom-events iojs

5
推荐指数
1
解决办法
1674
查看次数

连接到上游时,nginx&nodejs:connect()失败(111:连接被拒绝)

在我进入它之前,我已经查看了我能找到的每个类似问题,并且我发现没有解决我的问题.

我正在运行2个docker容器,1个用于nginx,1个用于nodejs api.我使用nginx作为反向代理.

当我请求localhost/api/x时,我收到一个502坏网关和nginx日志

nginx_1 | 2015/08/15 15:30:30 [error] 9#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: X.X.X.X, server: _, request: "GET /api/x HTTP/1.1", upstream: "http://127.0.0.1:8543/x", host: "localhost"
Run Code Online (Sandbox Code Playgroud)

我能够在我的计算机上使用docker ps获取8543映射到的端口,并且可以在那里访问应用程序.这使我得出节点应用程序正在运行并监听正确端口的结论(8543).我还能够从错误消息和重写日志中判断出请求uri正在被正确地重写.

我一直在反对这个问题,并且无法弄清楚什么是错的,任何帮助都将不胜感激!

我的nginx.conf:

user nginx nginx;

worker_processes auto;
worker_rlimit_nofile 8192;

events {
  worker_connections 8000;
}

error_log  /dev/stderr notice;
pid        /var/run/nginx.pid;

http {

  # Hide nginx version
  server_tokens off;

  rewrite_log on;

  # mime types
  include mime.types;
  default_type application/octet-stream;

  # Update charset_types due to updated mime.types
  charset_types text/xml text/plain …
Run Code Online (Sandbox Code Playgroud)

nginx node.js docker centos7 iojs

3
推荐指数
1
解决办法
5084
查看次数

既然Node.js已经添加了io.js,它是否比以前更加异步?这个版本有什么用?

我看到Node.js已将i/o添加到其功能中,这是否意味着它现在更加异步,或者它使用与以前相同的并发模型?

另外,我认为Node在v8上,他们为什么要回到v4?

node.js iojs

-4
推荐指数
1
解决办法
346
查看次数