Node.js 环境搭建及简单应用
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型。如果你想创建自己的服务,那么Node.js是一个非常好的选择。今天就来介绍一下 Node.js 环境搭建及简单应用。
1.安装 Node.js
首先下载安装 Node.js,官方网站下载即可。
官方地址:https://nodejs.org/en/
安装好后可以通过命令提示符查看安装版本是否正确,如下如所示:
这时你有可能会问到 npm 是什么?
简单来说 npm 就是 Node.js 的包管理工具(package manager),Node.js 已经内置 npm,不用单独安装。具体可以参考廖雪峰老师的介绍,这里就不再展开说明。
廖雪峰老师介绍地址:https://www.liaoxuefeng.com/wiki/1022910821149312/1023025597810528
2.安装 WebStorm
WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。这里我们将会用它来编写服务端代码,同样去官方网站下载即可,不过软件需要激活,具体激活方式可以自行百度,强力建议支持正版!我下载的是 2019.2 版本的,后台回复「WebStorm」可以获取安装包和汉化包。
官方地址:https://www.jetbrains.com/webstorm/download/#section=windows
3.下载 express 和 msgpack
首先来了解一下 express 和 msgpack 是什么?
express 是一个简洁而灵活的 node.js Web应用框架, 提供一系列强大特性帮助你创建各种Web应用。Express 不对 node.js 已有的特性进行二次抽象,我们只是在它之上扩展了Web应用所需的功能。
msgpack 是一个基于二进制高效的对象序列化 Library,用于跨语言通信。它可以像 JSON 那样,在许多种语言之间交换结构对象,但是它比JSON更快速也更轻巧。
express 官方地址:http://expressjs.com/
msgpack GitHub 官方地址:https://github.com/kawanet/msgpack-lite
可以通过「npm install --save express」命令安装 express:
可以通过「npm install --save msgpack-lite」命令安装 msgpack:
4.安装好模块后,就可以进行编程了,在工程目录下新建 JavaScript 文件命名为“Api.js”,编写代码如下:
//Api.jsvar express = require('express');var msgpack = require("msgpack-lite");var app = express();// 编码编码接口app.get('/pack/:a', function(req, res){var jsonVal = req.param("a"); // 接受浏览器传过来的值var buffer = msgpack.encode(jsonVal); // 对接受的值进行编码var bufferStr = buffer.toString("hex");res.send(bufferStr);});// 解码解码接口app.get('/unpack/:b', function(req, res){var unPackVal = req.param("b"); // 接受浏览器传过来的值var buffer = new Buffer(unPackVal,"hex");var data = msgpack.decode(buffer); // 对接受的值进行解码res.send(data);});app.listen(3000); // 监听 3000 端口
5.编写好后,右击文件,点击 Run 进行运行,可以看到控制台服务器已经打开了:
6.在浏览器输入「http://localhost:3000/pack/{var:"游戏开发小白变怪兽"}」获取编码:
7.之后可以将编号复制到解码接口后面进行解码「http://localhost:3000/unpack/d9237b7661723a22e6b8b8e6888fe5bc80e58f91e5b08fe799bde58f98e680aae585bd227d」:
可以看到,经过解码输入的文字又恢复了原来的样子,感兴趣的小伙伴快来尝试下吧!
我是「Super于」,立志做一个每天都有正反馈的人!
Node.js 环境搭建及简单应用的更多相关文章
- paip.最好的脚本语言node js 环境搭建连接mysql
paip.最好的脚本语言node js 环境搭建连接mysql #====下载node...走十一个exe..容易的.. 1 #0----Hello world .js 2 #---------模 ...
- Node.js环境搭建和学习(windwos环境)
Node.js环境搭建和学习 一.环境搭建 1.下载安装文件 下载地址http://nodejs-org.qiniudn.com/下载Node.js环境安装包,根据操作系统下载对应的安装包 下载地址 ...
- Node.js环境搭建&&npm安装
Node.js环境搭建 什么使Node.js呢?我们知道JavaScript开始作为客户端语言,但早已在浏览器端一统江湖,这时,野心越来越大,它就想向服务器端拓展了,于是Node.js就是这样的,我们 ...
- 十、.net core(.NET 6)搭建ElasticSearch(ES)系列之Java环境搭建和Node.js环境搭建
安装java jdk环境:我此处使用的是jdk16版本.下载地址: https://www.oracle.com/java/technologies/javase-jdk16-downloads.ht ...
- 初学Node.js -环境搭建
从毕业一直到现在都是在做前端,总感觉缺少点什么,java? PHP? .Net? 框架太多了,学起来不好掌握,听说node.js挺牛的,我决定把node.js好好的学一下.首先是环境的配置,这个配置真 ...
- ubuntu下node.js 环境搭建
由于使用gulp.js来对前端项目进行管理,所以搭建了node.js的环境 首先, 需要安装node, npm 去官网下载安装包,解压后放到你的安装的目录.在这里我的是/opt/node-v6.11. ...
- widows下node.js环境搭建及运行js
昨天刚刚开始学习node.js,网上一些教程不是很清楚,所以总结一下我的经验. 1.安装. 安装省略,就到官网上去下载安装一下就好.安装完成之后,打开cmd,输入"path",查看 ...
- ubuntu下Node.js环境搭建
Node.js是一个能够在服务器端运行JavaScript的开放源代码.跨平台JavaScript运行环境.Node.js由Node.js基金会持有和维护,并与Linux基金会有合作关系.Node.j ...
- 1. node.js环境搭建 第一行代码
一.NodeJs简介 NodeJS官网上的介绍: Node.js is a platform built on Chrome's JavaScript runtime for easily bui ...
随机推荐
- 100天搞定机器学习|Day2简单线性回归分析
第一天机器学习100天|Day1数据预处理,我们学习了数据预处理.知道了,数据预处理是机器学习中最基础和最麻烦,未来占用时间最长的一步操作.数据预处理一般有六个步骤,导入库.导入数据集.处理缺失值.分 ...
- MySQL错误:The user specified as a definer (XXX@XXX) does not exist (1449错误)最简解决方案
背景:从同事处通过备份和还原备份方法导入mysql数据库,导入成功后启动项目,发现出现以下错误:The user specified as a definer (XXX@XXX) does not e ...
- tomcat问题解决
tomcat问题解决 运行tomcat环境下,idea中出现 error running 项目名address localhost1099 is already in use 的时候,如何解决? 1, ...
- django项目中遇到要实现定时任务
django项目中遇到要实现定时任务,所以选用了简单易用的django-crontab插件. 1.安装 django-crontab pip install django-crontab 2.定时要执 ...
- JAVA基础之JDK安装
JDK的安装与环境变量配置是JAVA开发之路的第一步,很多新人在这一步上就卡了很久,浪费了很多时间,甚至有些人就轻易地“从入门到放弃”了. 今天我们就来一步步教你如何打倒这第一只拦路虎. 1.JDK下 ...
- Go语言设计模式汇总
目录 设计模式背景和起源 设计模式是什么 Go语言模式分类 个人观点 Go语言从面世就受到了业界的普遍关注,随着区块链的火热Go语言的地位也急速蹿升,为了让读者对设计模式在Go语言中有一个初步的了解和 ...
- MyBatis从入门到精通:各个实体类
SysUser类: package tk.mybatis.simple.model; import java.util.Date; public class SysUser { public Long ...
- 跨站脚本攻击(反射型xss)笔记(一)
环境:一个微信端(所以用浏览器演示UI有点变形) 下图是未插任何脚本时的原页面. 按惯例,上一波["><script>alert(1)</script>] 无弹 ...
- css基础4
今天是2019年6月21日,周五了.在这里写上一篇随笔,主要内容是css基础中的一些细节部分,话不多说,直接上! 一.背景渐变: background-image 线性渐变:linear-gradie ...
- +p解决vim粘贴自动缩进。 数字gg跳到vim指定行。 vim查找到后,enter键修改
+p解决vim粘贴自动缩进. 数字gg跳到vim指定行. vim查找到后,enter键修改