http,path模块

一.path

(1)path.join

说明:这个api是用来拼接路径

使用:

导入:

const path=require('path')
pathStr=path.join('/a','/b/c','../',''./d')

注意:../会抵消掉一层路径

所以最终的结果是:

console.log(pathStr)

(2)path.basename

说明:拿到文件名

代码:

const path=require('path')
//会抵消掉一层路径
const fpath='./duqu.txt'
const fullname=path.basename(fpath,'.txt')
console.log(fullname);

第二个参数如果加了文件名的后缀, 则读取的只有文件名。

结果:

二.http

大家应该知道,获取资源的电脑叫做客户端,输送资源的电脑被叫做服务器。

(1)ip

每一台电脑都有一个ip地址,就像每个人都有身份证一样。

如,可以通过14.215.177.39这个ip地址访问百度

(2)域名

域名是ip地址的别称,你通过ip地址访问,没有语义化,通过www.baidu.com访问语义化很足。

(3)端口

计算机中的端口号,就好像现实生活中的门票号一样。通过门牌号,外卖小哥可以在整栋大楼的众多房间中,准确地把外卖送到你的手中。

同样的道理,在一台电脑中,可以运行成千上百个web服务。每个web服务都对应唯一的端口号。客户端发送过来的网络请求,可以通过端口号,可以被准确地交给对应的web服务器进行处理。

图示:

(4)127.0.0.1和Localhost 

说明:

127.0.0.1是回送地址,指本地机,是用来测试使用。

回送(127.x.x.x)是本机回送地址(Loopback Adddress),即主机IP堆栈内部的IP地址,主要

用于网络软件测试以及本地机进程通信,无论什么程序,一旦使用回送地址发送数据,协议

软件立即返回,不能进任何网络传输。

127.0.0.1这个地址分配给loopback接口。loopback是一个特殊的网络接口(可理解成虚拟网卡) ,

用于本机各个应用之间的网络交互。只要操作系统的网络组件是正常的,loopback就能正常工作。

在windows系统中,这个地址有一个别名“Localhost”。寻求这样一个地址,是不能发到网络接口的。

除非出错,否则在传输介质上永远不应该出现目的地址为"127.0.0.1"的数据包。

(5)通过http创建一个服务器

// 1.导入http
const http=require('http')
// 2.创建服务器
const app=http.createServer();
//3.监听接口
app.on('request',function(req,res){
console.log(req.method);
console.log(req.url);
res.end('123456')
})
//4.启动接口
app.listen('8080',function(){
  console.log('端口启动在http://127.0.0.1:8080');
})

启动后:

(6)req

req监听的请求相关的信息

如:请求方法,请求的url地址

(6)res

响应给客户端的内容

res.end() :响应的内容。

res.setHeader():响应解析的编码格式。

(7)通过postman来请求本地的服务器

三.通过不同的地址访问到不同的内容

1.代码:

const http=require('http')
const app=http.Server()
app.on('request',(req,res)=>{
  const url=req.url
  let content=' <h1>404 Not found</h1>'
  if (url==='/'||url==='/index.html') { 
    content=`shouye`
  }
  else if(url==='/about.html'){
    content=`about`
  }
  res.setHeader('Content-Type','text/html','charset=utf-8')
  res.end(content)

})
app.listen('80',()=>{
  console.log('http://127.0.0.1:80');
})

图示:

没有访问到

 

猜你喜欢

转载自blog.csdn.net/qq_59076775/article/details/123618598