1.我们学任何一门语言如果不会怎么办当然是去他的官网下面是官网地址https://nodejs.org
2.***淘宝镜像https://npm.taobao.org/mirrors/node***这里面有这个node的js安装包
3.Windows安装https://nodejs.org/zh-cn/download/
作为异步事件驱动的JavaScript运行时,Node旨在构建可伸缩的网络应用程序。 在下面的“hello world”示例中,可以同时处理许多连接。 在每次连接时都会触发回调,但是如果没有工作要做,Node将会休眠。
不是,主线程Javascript线程是单线程,libuv提供线程池,NodeJs不仅仅是一个Javascript引擎,而是一套运行时,不能将Javascript线程孤立出来。
由于主线程Javascript线程是单线程,所以主线程不能做CPU密集操作(比如什么加解密之类的,这种操作只能有Javascript线程运行,会阻塞事件循环),所以NodeJs适合I/O密集场景,比如常见的(TCP/HTTP服务器)
对于前端开发者来说,几乎没有语言门槛
跨平台,NodeJs在主流操作系统都有对应的二进制程序
标准库强大,第三方库也很多,降低了造轮子成本
易于部署,服务器安装一个NodeJs程序配合NPM包管理器即可运行,不用像PHP那样还要安装扩展,配置前端HTTP服务器
const http = require("http");
const server = http.createServer((request, response) => { })
server.listen("4399",() => { console.log("success"); })
1.创建index.js
2.编写代码
const http = require('http'); const server = http.createServer((req, res) => { console.log(req.method, req.url) //req.method 本次请求的请求方法,有GET/POST/PUT //req.url 本次请求的路径(不包含域名) res.end("你好") //res.end 输出数据并结束本次响应 }) server.listen(8080, () => console.log('listen on 8080'))
代码说明
1.require 用来加载模块,本例中加载了NodeJs自带的http模块以使用其中的功能
2.http.createServer函数创建了一个 HTTP服务器,并配置了请求回调函数
3.server.listen是监听系统端口,第二个参数是监听成功的回调函数
执行方式
1.打开终端后执行node index.js
2.浏览器访问http://127.0.0.1:8080/ 会输出我走过最远的路便是你的套路
3.如果乱码怎么办
4.乱码解决 方法 再createServer函数内部添加response.setHeader(“content-type”, “text/html;charset=utf-8”)就好了
const http = require('http'); const server = http.createServer((req, res) => { if (req.url === '/') { res.end('index'); return; } if (req.url === '/user') { res.end('user'); return; } }) server.listen(8080, () => console.log('listen on 8080'));
解析