网址
网址: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:网址
让我们把上面的那个网址打印一下:
代码运行的结果:
从上面的结果可以看出:我们通常会使用obj.pathname、obj.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文件:
index.css文件:
index.html文件:
代码运行结果: