一、什么是node.js?
它是可以运行JavaScript的服务平台,可以吧它当做一门后端程序,只是它的开发语言是JavaScript
二、安装
1、node.js的特性:
- 非阻塞IO模型
- 时间驱动
2、运用的场景:
- 高并发低业务 - 实时场景 - 聊天、电子商务、视频直播等
3、安装地址:
http://nodejs.cn/
判断是否安装成功 node -v
进入编辑状态:node+回车,可以进行一些运算
退出编辑模式:ctrl+d或者ctrl+c两次
4、npm是一个包管理器,其实是一个命令。使用它来安装或者卸载包
首先进行项目初始化:npm init (快速初始化:npm init -y),会生成文件:package.json
npm install 包的名字 --save-dev npm install express --save-dev:吧依赖包增加到开发环境下 npm install express npm install express --save :吧依赖包增加到运行环境下
三、简单使用
模板化开发:
stu.js
var man="海燕"; module.exports = man; //对外开放接口 console.log(man);
stu2.js
var temps = require("./stu.js"); //引用文件,在js文件中加个./代表是同级目录 console.log(temps);
那么如何执行文件呢? node b.js =====》node 文件名
四、用node.js简单的做一个登录
login.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width"> <title>Title</title> <script src="jquery.js"></script> <style> span{ color: red; } </style> </head> <body> <div> <form action="" method="post"> <p>用户名:<input type="text" placeholder="username" id="username"></p> <p>密码:<input type="password" placeholder="password" id="password"></p> <input type="submit" value="提交" onclick="login()"> <span></span> </form> </div> <script> function login() { var username = $("#username").val(); var password = $("#password").val(); var url = "http://localhost:8080/login"; console.log(username,password); $.post(url, {username,password}, function (response) { console.log(response); if (response){ $("span").html("登陆成功") }else{ $("span").html("登录失败") } }) } </script> </body> </html>
server.js
var express = require("express"); //引用包 var query = require("querystring"); var app = express(); //初始化 app.listen("8080",function () { //监听 console.log("服务已经启动,端口是8080") }); var data2=""; app.post( ‘/login‘, function (request,response) { response.header("Access-Control-Allow-Origin", "*"); request.on("data",function (datas) { //接收用户发来的数据,里面的data是不变的,就得叫data data2 = ""; // console.log(datas) ; //<Buffer 75 73 65 72 6e 61 6d 65 3d 26 70 61 73 73 77 6f 72 64 3d // >这样打印的结果是Buffer 类型的,所以我们得拼接一下,用querystring这个模块转成字符串 data2+=datas; }); request.on("end",function () { //接收用户发来的数据之后开始解析 console.log(query.parse(data2)); //{ username: ‘海燕‘, password: ‘123‘ } var username = query.parse(data2).username; var password = query.parse(data2).password; if (username == "海燕" && password == "123"){ response.send(true)//如果登录成功就把数据返回给前端 }else{ response.send(false) } }) } );
注意:启动的时候 ===>node server.js