CentOS 7 配置JS语言开发环境(JavaScript)

CentOS 7 配置JS语言开发环境(JavaScript)

安装ServerSide JavaScript环境“Node.js”

  • 安装Node.js和包管理工具npm
[root@linuxprobe ~]# yum -y install epel-release
[root@linuxprobe ~]# yum --enablerepo=epel -y install nodejs npm
  • 创建一个测试工具
[root@linuxprobe ~]$ vi helloworld.js
var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('listening on http://127.0.0.1:1337/');

# run server
[root@linuxprobe ~]$ node helloworld.js &
# verify (it's OK if following reply is back )
[root@linuxprobe ~]$ curl http://127.0.0.1:1337/
Hello World
  • 安装Socket.IO并使用WebSocket创建测试
[root@linuxprobe ~]$ npm install socket.io express
[root@linuxprobe ~]$ vi chat.js
 var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

app.get('/', function(req, res){
  res.sendFile(__dirname + '/index.html');
});

io.on('connection', function(socket){
  socket.on('chat message', function(msg){
    io.emit('chat message', msg);
  });
});

http.listen(1337, function(){
  console.log('listening on *:1337');
});

[root@linuxprobe ~]$ vi index.html
 <!DOCTYPE html>
<html>
<head>
<title>WebSocket Chat</title>
</head>
<body>
<form action="">
<input id="sendmsg" autocomplete="off" /><button>Send</button>
</form>
<ul id="messages" style="list-style-type: decimal; font-size: 16px; font-family: Arial;"></ul>
<script src="/socket.io/socket.io.js"></script>
<script src="http://code.jquery.com/jquery.min.js"></script>
<script>
  var socket = io();
  $('form').submit(function(){
    socket.emit('chat message', $('#sendmsg').val());
    $('#sendmsg').val('');
    return false;
  });
  socket.on('chat message', function(msg){
    $('#messages').append($('<li style="margin-bottom: 5px;">').text(msg));
  });
</script>
</body>
</html>

[root@linuxprobe ~]$ node chat.js
listening on *:1337

安装ServerSide JavaScript环境Node.js 4(LTS)

  • 可以从CentOS SCLo软件存贮库进行安装
# install from SCLo
[root@linuxprobe ~]# yum --enablerepo=centos-sclo-rh -y install rh-nodejs4
  • 设置环境变量
# load environment variables
[root@linuxprobe ~]# scl enable rh-nodejs4 bash
[root@linuxprobe ~]# node -v
v4.4.2
[root@linuxprobe ~]# which node
/opt/rh/rh-nodejs4/root/usr/bin/node
  • 设置登录时自动启用Node.js 4
[root@linuxprobe ~]# vi /etc/profile.d/rh-nodejs4.sh
#!/bin/bash
source /opt/rh/rh-nodejs4/enable
export X_SCLS="`scl enable rh-nodejs4 'echo $X_SCLS'`"

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏linux驱动个人学习

如何增加内核模块

Kconfig 1.先了解一下Kconfig的语法:  一个典型的内核配置菜单如下: menu "Network device support"  config...

2975
来自专栏Porschev[钟慰]的专栏

.NET4.0下web应用程序用UrlRewriter.dll重写无后缀路径

示例环境:VS2010 要求:               重写前:http://localhost:13275/Default.aspx?username=w...

1989
来自专栏康怀帅的专栏

Docker Compose version 3 使用详解

Define application stacks built using multiple containers, services, and swarm c...

2.4K5
来自专栏木可大大

漫谈Git和Github

上期漫谈版本控制系统中我们谈到了版本控制系统的四个演进过程,即悲观锁版本 -> 乐观锁版本 -> 多分支版本 -> 分布式版本,目前我们使用最多的是分布式版本,...

5034
来自专栏cloudskyme

apache synapse使用(1)

一.Synapse介绍 Synapse 是一个简单的 XML 和 Web 服务管理与集成代理,可用于构成 SOA 和企业服务总线(ESB)的基础。Synapse...

3567
来自专栏me的随笔

使用Visual Studio 2015 Community 开发windows服务

  昨天研究在.NET下开发Windows服务程序,期间遇到一些小问题,这里仅将自己的开发过程和需要注意的地方写下和广大网友分享……

472
来自专栏技术专栏

scrapy进阶开发(二):暂停与重启

1532
来自专栏李蔚蓬的专栏

Android中asset文件夹和raw文件夹区别

这阵子有位同学在一个命名非“raw”的文件夹中放置mp3文件,导致R文件报错,故此研究,寻得此篇文章,特做分享。

782
来自专栏咸鱼不闲

mybatis逆向工程

mybatis逆向工程的作用是根据数据库里的表结构自动生成实体类,映射文件,和接口。 和hibernate的自动建表相反。

942
来自专栏谈补锅

iOS之ProtocolBuffer搭建和示例demo

     这次搭建iOS的ProtocolBuffer编译器和把*.proto源文件编译成*.pbobjc.h 和 *.pbobjc.m文件时,碰到不少问题!

873

扫码关注云+社区