第二天学习后端——网址URL、url模块、http和fs实现静态资源托管

175 阅读1分钟

网址

网址:URL:网络资源定位器

网址的写法www.baidu.com/s?tn=150074…

https:协议: www.baidu.com:域名(是独一无二的);

/?中间的字符串:pathname(也就是文件路径)

?#中间的字符串:querystring(查询字段)

#后面的字符串:hash(路由) 注意:路由前面的字符串都会发给后台,而路由不会。

域名(host:主机):通过DNS解析,会把域名解析为一个ip+port(端口)

url模块

导入url模块var url=require("url")

把一个网址解析成一个对象var obj=url.parse(“URL”)

URL:网址

让我们把上面的那个网址打印一下:

image.png

代码运行的结果:

image.png

从上面的结果可以看出:我们通常会使用obj.pathnameobj.query这两种。

obj.pathname:这是文件路径,将__dirname+obj.pathname拼接起来,就可以得到文件的绝对路径。

为什么要使用它,而不继续使用以前的方法呢?

是因为我们读文件时,并不需要?后面的查询字符串和路由,而且我们的文件夹中也没有类似s?tn=15007414_dg&ie=utf-8&word=%E6%8E%98%E9%87%91这个文件,只有写业务时,才需要查询字符串。

http和fs实现静态资源托管

1.把除了index.js文件以外的文件放在一个src文件夹中,index.js文件与这个src文件夹同级。

index.js文件:

image.png

index.css文件:

image.png

index.html文件:

image.png

代码运行结果:

image.png