NodeJS

nodejs的安装和环境搭建

岁酱吖の 提交于 2019-12-10 08:01:22
安装npm。 npm的项目地址: https://github.com/creationix/nvm/blob/master/README.markdown 直接从Github中将git clone nvm到本地。 $ cd ~/git $ git clone https://github.com/cnpm/nvm.git 配置终端启动时自动执行 source ~/git/nvm/nvm.sh, 在 ~/.bashrc, ~/.bash_profile, ~/.profile, 或者 ~/.zshrc 文件添加以下命令: source ~/git/nvm/nvm.sh 重新打开你的终端, 输入 nvm ``` $ nvm Node Version Manager Usage: nvm help Show this message nvm --version Print out the latest released version of nvm nvm install [-s] <version> Download and install a <version>, [-s] from source nvm uninstall <version> Uninstall a version nvm use <version> Modify PATH to use <version>

linux上安装nodejs的步骤和注意问题

风流意气都作罢 提交于 2019-12-10 07:46:03
Linux(Ubuntu)下安装NodeJs 安装nodeJS之前,如果没有安装g++及 libssl-dev,则先要安装好,安装方法如下: $ sudo apt-get install g++ $ sudo apt-get install libssl-dev 接下来,就可以下载安装nodeJS了,目前稳定版本为 Node.js 0.6.18,下面是安装步骤: $ wget http://nodejs.org/dist/v0.8.16/node-v0.8.16.tar.gz (根据自己想要的版本修改对应的版本号) $ tar zxvf node-v0.8.16.tar.gz $ ./configure $ make && make install 安装好后,在 控制台下输入: $ node -v v0.8.16 即可看到安装好的nodeJS版本号。 一切就绪后,按照惯例来一个HelloWorld. $ node >console.log(‘Hello World!’); 在redhat上面安装nodejs也是一样的步骤,如果出现 系统没有g++的问题,运行一下 su -c "yum install gcc-c++", 系统就会安装g++,在redhat上面g++是gcc-c++。这一点切记。 来源: oschina 链接: https://my.oschina.net/u

nodejs+grunt+mocha+express+postgres搭建开发环境

拜拜、爱过 提交于 2019-12-09 20:37:31
nodejs/bower/grunt/mocha/express/postgres搭建开发环境 0. nodejs 流行的异步IO解决方案,链接[http://nodejs.org/](http://nodejs.org) 1. bower 前段框架管理工具 2. grunt 自动化工具[gruntjs.com](gruntjs.com) 3. mocha 自动化单元测试[http://mochajs.org/](http://mochajs.org) 4. express nodejs界最有名气的开源框架[http://expressjs.com/](http://expressjs.com/) 5. postgresql 开源数据中的佼佼者[http://www.postgresql.org/](http://www.postgresql.org/) nodejs+express 负责与数据库交互,处理用户请求 bower 负责管理前段文件,例如 jquery, bootstrap等等, bower自动处理类库之间兼容问题,以及依赖问题,例如bootstrap依赖jquery, bower install bootstrap --save会自动安装合适版本的jquery,或检查已经安装的类库是否兼容 grunt 自动将前段css, JS合并,打包压缩,生成 lib.min.js

Centos 7 安装Nodejs 启动Express项目

☆樱花仙子☆ 提交于 2019-12-09 16:44:24
去官网下载Nodejs压缩包 https://nodejs.org/download/release/latest-v6.x/ 我把node-v6.11.4-linux-x64.tar.gz上传到opt目录下的 tar -xvf node-v6.11.4-linux-x64.tar.gz -C /usr/local/ cd /usr/local/ mv node-v6.11.4-linux-x64/ nodejs ln -s /usr/local/nodejs/bin/node /usr/local/bin ln -s /usr/local/nodejs/bin/npm /usr/local/bin 执行node -v 会出现nodejs的版本号 再配置nodejs的环境变量 vi /etc/profile 在配置最后加入nodejs的文件目录 export NODE_HOME=/usr/local/nodejs export PATH=$PATH:$NODE_HOME/bin export NODE_PATH=$NODE_HOME/lib/node_modules 然后保存,再运行 source /etc/profile 安装express-generator npm install -gd express-generator 查看express的版本 express -

一个前端工程师眼里的NodeJS

亡梦爱人 提交于 2019-12-09 13:29:35
JavaScript单线程的误解   在我接触JavaScript(无论浏览器还是NodeJS)的时间里,总是遇到有朋友有多线程的需求。而在NodeJS方面,有朋友甚至直接说到,NodeJS是单线程的,无法很好的利用多核CPU。   诚然,在前端的浏览器中,由于前端的JavaScript与UI占据同一线程,执行JavaScript确实为UI响应造成了一定程度上的麻烦。但是,除非用到超大的循环语句执行JavaScript,或是用阻塞式的Ajax,或是太过频繁的定时器执行外,JavaScript并没有给前端应用带来明显的问题,所以也很少有朋友抱怨JavaScript是单线程而不能很好利用多核CPU的问题,因为没有因此出现性能瓶颈。   但是,我们可以用Ajax和Web Worker回应这个误解。当Ajax请求发送之后,除非是同步请求,否则其余的JavaScript代码会很快被执行到。在Ajax发送完成,直到接收到响应的这段时间里,这个网络请求并不会阻塞JavaScript的执行,而网络请求已经发生,这是必然的事。那么,答案就很明显了,JavaScript确实是执行在单线程上的,但是,整个Web应用执行的宿主(浏览器)并非以单线程的方式在执行。而Web Worker的诞生,就是直接为了解决JavaScript与UI占用同一线程造成的UI响应问题的

分享2个实用的nodejs模块

我怕爱的太早我们不能终老 提交于 2019-12-09 09:42:47
分享2个实用的nodejs模块 kp 根据端口号杀死进程,尤其对于pm2的集群模式,僵尸进程有效 mount-routes 根据路径来自动加载路由,让开发更简单 kp kp is a tool for kill process by server port. only use for mac && linux Install [sudo]npm install -g kp Usage default server port is 3000,直接执行kp会杀死使用3000端口的应用 kp 根据某个端口 kp 3002 支持sudo,因为有的时候有权限的问题 kp 3002 -s or kp 3002 --sudo 目前centos/ubuntu和mac已经测过 感谢@jysperm反馈:fuser 来自 psmisc 这个包(killall 也在这个包里),Ubuntu 默认安装,其他系统不清楚。 没有使用fuser的原因是:fuser在mac上不能用 mount-routes mount-routes = auto mount express routes with routes_folder_path Install npm install --save mount-routes Usages var express = require('express') var app =

Express+Socket.IO 搭建即时聊天

隐身守侯 提交于 2019-12-07 13:06:59
技术栈是:nodejs express socketio bootstrap sqlite 由于初学,代码排版模块化实现的不好,只是提供了一个功能。 源码地址: https://github.com/Qquanwei/Wire 运行node server.js后即提供了一个端口号为8080的服务 初始打开的时候显示如下 创建一个会话ID,如果该ID没有人创建过的话则直接创建成功,然后跳转到聊天界面。当然也可以通过连接按钮连接到已经创建好的聊天室中。 聊天界面如下 一个普通的聊天界面。 不安全因素就是在你聊天的时候可能被其他人乱入,因为没有提供验证机制,所以可以通过创建一些奇妙的会话ID来减少这种情况发生的可能性。 当然可以用中文,只要你把ID提供给你的朋友们,你们就可以一起happy的聊天了。 来源: oschina 链接: https://my.oschina.net/u/870108/blog/598446

用 Redis 处理 jsonwebtoken 生成的 Token

旧时模样 提交于 2019-12-07 10:13:48
作者好牛逼啊,我不懂的他全都懂。 Use Redis to revoke Tokens generated from jsonwebtoken 在 前面 一篇文章中,我讲述了怎么用 AngularJS 和 NodeJS 通过 jsonwebtoken 做用户验证。有人说,就算点了 logout 按钮, 你把 token 从 Angular 页面的 AuthenticationService 上移掉,你还是能用这个有效的 Token 来访问 API,直到 jsonwebtoken 判定它过期为止。 为了防止这种丑行,我决定用 Redis 数据库 来处理 token,当用户点了 logout 按钮的时候。Token 只会保存一段时间,就是你用 jsonwebtoken 登陆之后,token 有效的这段时间。之后,token 会被 redis 自动删掉。最后,我们创建一个 nodejs 的中间件,检查所有受限 endopoint 用的 token 是否存在 Redis 数据库中。 为 NodeJS 配置 Reids 首先我们要为 nodejs 安装 Redis 客户端库,并且配置我们的客户端链接到 Redis 实例。当 nodejs 应用启动的时候: <!-- lang: js --> var redis = require('redis'); var redisClient =

一步步创建自己的npm插件

拥有回忆 提交于 2019-12-07 02:33:30
在 github 创建一个项目,比如创建名为 randomNickname 的项目, 这个代码库用户存放npm插件的代码。 首先在npm 官网 申请账号,后面提交到npm官网需要用到。 mkdir npmjs cd npmjs npm init 根据提示输入相应的信息,可用参考如下设置。 ubuntuvimdeMacBook-Pro:randomNichname ubuntuvim$ npm init This utility will walk you through creating a package.json file. It only covers the most common items, and tries to guess sensible defaults. See `npm help json` for definitive documentation on these fields and exactly what they do. Use `npm install <pkg> --save` afterwards to install a package and save it as a dependency in the package.json file. Press ^C at any time to quit. name:

Linux搭建Nodebb论坛指南-安装篇

强颜欢笑 提交于 2019-12-06 22:25:21
Nodebb 是一个很酷很简洁的论坛系统。基于nodejs,使用 socket.io 实现实时通信。socket.io的好处在于提供了多种传输实现作为消息传输的方式(支持的 传输方式 WebSocket,Flash,Ajax Long Polling等,支持的 浏览器 IE5.5+,Chrome 4+,Firefox 3+,Android Webkit,IPhone safari等),并封装为简单一致的API以供调用。Nodebb提供了高度可定制的主题、插件系统。想做个论坛玩玩,或者想学习nodejs的同学可以马上上手了。 示例环境: <p>CentOS v6.5,node.js v0.10.28 ,Redis v2.8.9 , nginx v1.6.0</p> ## 一、安装基础依赖 首先安装依赖软件。这里基本上使用下载安装,各版本的Linux也可使用各自的包管理器进行更快捷的安装。Nodebb依赖node.js,数据库使用Mongo或redis。这里以redis为例。 ### 安装nodejs 在[nodejs下载页面][6]选择需要的nodejs版本进行下载。解压后即可使用。以64位Linux版本为例: wget http://nodejs.org/dist/v0.10.28/node-v0.10.28-linux-x64.tar.gz tar -xzf node-v0.10