昨天学习完了读写模块,今天继续学习
Path路径模块
1、路径拼接,path.join方法
用法很简单,首先,使用路径模块要声明个常量,const path = require (‘path’)
然后直接使用就好了,const fpath = path.join(‘路径1’,‘路径2’,‘路径3’,‘路径4’,‘路径5’)
输出的结果就是这几个路径连在一起。
这个方法的使用场景并不多,一般我只用于—dirname和路径的拼接。path.join(__dirname,'../file/nihao.txt')
有人会问了,为什么非要这么写,直接用加号连接不就行了吗?不知道你会不会有这个问题,反正我是有的。这个方法之所以能够替代+号,是因为他会自动改正你写的文件路径,所以一些小错误就可以避免。更稳定一些。而且在这个方法中,(../)的使用会被方法识别到,从而起到抵消上一层路径的效果,这样我们就可以做到实现随机路径的访问,否则我们只能访问当前文件夹或者同级文件夹目录,限制还是很大的。给你们举个例子:
不知道你们能不能get到我的意思,不过这篇文章也是写给我自己看的,就无所谓了,欸嘿~~
2、path.basename()方法,获取文件路径的最后一部分
这个方法通常用来获取文件名。
这个方法的使用也很简单: 只需要传入两个参数就好 path.basename(fpath,‘后缀’)
eg:path.basename('/a/b/c/index.html','.html')
前面的参数是必传的,是文件的路径,后面那个参数可以不传,是文件的后缀名,如果你不想要输出文件的后缀,只想输出名字,就可以写上后面这个参数。
3、path.extname()方法,获取文件的后缀名
使用很简单,只需要传入一个文件路径就可以,具体有啥用我倒是不清楚。
Http模块
在开始这部分的学习之前,我要先学习一下什么是客户端、什么是服务器这些基础概念:
在网络节点中,负责消费资源的电脑,叫做客户端;
负责对外提供网络资源的电脑,叫做服务器。
和服务器有关的概念我们最好也要了解一下:
1、ip地址
IP地址就是互联网上每一台计算机的唯一地址,因此IP地址具有唯一性。所以说,你要是想和别人通信,就需要你俩互相知道彼此的ip地址
2.域名和域名服务器
因为ip不是很好记忆,尤其是需要记多个ip的时候,基本用人脑是不可能的,所以我们发明了一套字符型的地址方案,也就是域名,想当然,ip地址和域名肯定是一一对应的,这些一一对应的关系被存放在域名服务器,我们在使用的时候只需要拜托服务器帮我们把域名转化为ip地址就可以访问了。总结一下,域名服务器就是提供ip地址和域名之间的转换服务的服务器。
3、我们本地的服务器默认ip是127.0.0.1,对应的域名是localhost,如果你已经在自己的电脑上启动了服务器,可以试着在浏览器上自己输入看一下。或者打开cmd ping一下,也是会有反应的。
4、端口号
计算机的端口号,类似于我们生活中的门牌号,也是唯一标识的,但是这里不要搞混了,ip地址唯一标识的是我们的电脑,而端口号唯一标识的是我们的服务器,分得清吗朋友们,我们只能同时操作一台电脑,但是在电脑上面可以同时开n多个服务器。这是区别。
基础信息就先说这么多吧,下面介绍http模块的具体使用:
node.js提供的http模块是用来创建web服务器的模块。
还是老样子,使用之前要先导入,const http= require(‘http’)
然后调用方法,同时我们生成一个实例来接收创建的服务器
const server = http.createServer()
为服务器绑定一个request事件,监听客户端的请求
server.on(‘request’,function(req,res){
//我们可以输出一个内容来看看我们的服务器是不是被访问了
console.log(“someone visit our server。”)
}
)//启动服务器
server.listen(8080,function(){
console.log('server running at http://127.0.0.1:8080')//同样的道理,输出一个东西来检查我们是否成功启动。
})
结果来看是没问题的
在刚刚绑定的request请求方法中,我们传入了两个参数,req和res
req是包含了前端传回来的信息的,比如网址,使用的方法(Get、Post、Put之类的)。直接用 req.url 或者 req.method就能看到
还有一个小问题就是,有时候我们传给前端的内容是中文的,所以有可能会出现中文的乱码,解决方法也很简单,我们要在请求头添加一行代码,声明我们所使用的编码格式
res.setHeader('Content-Type','text/html;charset=utf-8')
通过设置"Content-Type"为"text/html;charset=utf-8",服务器告诉客户端它将发送的内容是HTML类型,并且使用UTF-8字符编码。这对于确保客户端正确地解析和显示服务器返回的HTML内容非常重要。
标签:http,nodejs,ip,路径,域名,path,服务器,继续 From: https://www.cnblogs.com/zhanshuang/p/18092156