您好,欢迎访问代理记账网站
  • 价格透明
  • 信息保密
  • 进度掌控
  • 售后无忧

node.js之HTTP模块

安装方式

1.我们学任何一门语言如果不会怎么办当然是去他的官网下面是官网地址https://nodejs.org

2.***淘宝镜像https://npm.taobao.org/mirrors/node***这里面有这个node的js安装包

3.Windows安装https://nodejs.org/zh-cn/download/

在这里插入图片描述

安装完毕后 打开cmd

在这里插入图片描述

  1. 执行node -v就会显示版本这样则安装成功

在这里插入图片描述

下面我们了解一下Nodejs是什么我们看一下官方说法

作为异步事件驱动的JavaScript运行时,Node旨在构建可伸缩的网络应用程序。 在下面的“hello world”示例中,可以同时处理许多连接。 在每次连接时都会触发回调,但是如果没有工作要做,Node将会休眠。

NodeJs是否是单线程

不是,主线程Javascript线程是单线程,libuv提供线程池,NodeJs不仅仅是一个Javascript引擎,而是一套运行时,不能将Javascript线程孤立出来。

NodeJs优缺点以及适合的场景

由于主线程Javascript线程是单线程,所以主线程不能做CPU密集操作(比如什么加解密之类的,这种操作只能有Javascript线程运行,会阻塞事件循环),所以NodeJs适合I/O密集场景,比如常见的(TCP/HTTP服务器)
对于前端开发者来说,几乎没有语言门槛
跨平台,NodeJs在主流操作系统都有对应的二进制程序
标准库强大,第三方库也很多,降低了造轮子成本
易于部署,服务器安装一个NodeJs程序配合NPM包管理器即可运行,不用像PHP那样还要安装扩展,配置前端HTTP服务器

步骤

第一步导入http模块

const http = require("http");

第二部创建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'));

解析

  1. 执行node index.js
    2 .浏览器访问http://127.0.0.1:8080/会输出index
    3 .浏览器访问 http://127.0.0.1:8080/user 会输出user

分享:

低价透明

统一报价,无隐形消费

金牌服务

一对一专属顾问7*24小时金牌服务

信息保密

个人信息安全有保障

售后无忧

服务出问题客服经理全程跟进