NodeJs(02)——内置模块

21 篇文章 1 订阅
  • os操作系统模块
  • path路径模块
  • url模块
  • fs文件模块
  • 模拟服务器

本篇文章只针对window操作系统
本篇文章只记录常用的几个属性、部分模块,不会全部练习
详情API文档请参考:http://nodejs.cn/api/os.html

os操作系统模块

语法

var os=require("os");

方法

方法名详解
EOL换行
hostname()主机名
type()系统
totalmem()内存
cpus()所有的cpu

示例

var os=require("os");
console.log('hello'+os.EOL+"nodejs");//换行
console.log('主机名'+os.hostname());
console.log("系统"+os.type());
console.log("内存:"+os.totalmem());
console.log(os.cpus());

在这里插入图片描述

path路径模块

语法

var path=require("path");

方法

方法名详解
basename(文件路径)文件名
dirname(文件路径)文件夹名
extname(文件路径)文件后缀名
format(对象)拼接路径 例如:dir:文件夹路径 base:文件名
parse(文件路径)拆分路径(与format相反)

示例

/*
    路径模块
*/
var path=require('path');
var testfile='D:\\pk\\dconfig.json';
var name=path.basename(testfile);//文件名
var dname=path.dirname(testfile);//文件夹名
var extname=path.extname(testfile);//后缀名
let ok=path.format({
    dir:'c:\\images\\users',
    base:'bg1.jpg'
});//拼接路径
let parse=path.parse('c:\\images\\users\\bg1.jpg');//与format相反

console.log("文件名"+name+"文件夹名:"+dname+"后缀:"+extname);
console.log("拼接路径:"+ok);
console.log("拆分路径:",parse);

在这里插入图片描述

url模块

语法

const url=new URL('https://example.org/abc?123#find');

属性

属性名详解
href网址路径
host网址主机部分
pathname参数名
search参数值
hash设置获取片段部分#

示例

/**
 * url模块
 */
const url=new URL('https://example.org/abc?123#find');
console.log(url.hash);//获取片段部分
//设置片段部分
url.hash="sethash";
console.log(url.href);//修改后得到的网址
console.log(url.host);//网址主机部分
console.log(url.pathname);
console.log(url.search);

在这里插入图片描述

fs文件读写

语法

var fs=require('fs');

读文件

创建个data.txt文件内容:

hello filesystem
CSDN--->碰磕
//读
fs.readFile('day1/data.txt',(err,data)=>{
    if(err){
        console.log("读取失败");
        return;
    }
    //data就是读取的数据
    // console.log(data);//二进制数据
    console.log(data.toString());
})

在这里插入图片描述

写文件

const data='Hello 碰磕!';
fs.writeFile('day1/pengke.txt',data,(error)=>{
    if(error){
        console.log("写文件失败");
        return;
    }
    console.log("写入成功!!!");
})

最终得到一个文件pengke.txt
在这里插入图片描述

Hello 碰磕!

模拟服务器(http)

关键模块:http

示例

/**
 * 模拟服务器
 */
var http=require("http");
var port=1234;//端口号
var server=http.createServer((req,resp)=>{
    //获取浏览器的请求
    console.log("获取请求:",req.url);
    if(req.url=='/'){
        $msg='这里是首页';
    }else if(req.url=='/login'){
        $msg='这里是登陆页';
    }else{
        $msg='404';
    }
    //响应数据
    resp.writeHead(200,{'Content-Type':'text/html;charset=utf-8'});
    resp.write($msg);
    resp.end();
});
server.listen(port);
console.log("服务器运行了....http://127.0.0.1:"+port);

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

练习(fs+http)

通过修改http路径来写入内容到txt中并且获取出来显示在页面上

/**
 * 模拟服务器
 */
var http=require("http");
const fs=require("fs");
var port=1234;//端口号
var server=http.createServer((req,resp)=>{
    var data='这里是首页';
    //获取浏览器的请求
    console.log("获取请求:",req.url);
    if(req.url=='/'){
        console.log("index");
        data='这里是首页';
    }else if(req.url=='/login'){
        console.log("login");
        data='这里是登陆页';
    }else{
        console.log("404");
        data='404';
    }
    fs.writeFile('day1/pengke.txt',data,(error)=>{
        console.log("data="+data);
        if(error){
            console.log("写文件失败");
            return;
        }
        console.log("写入成功!!!");
    })
    fs.readFile('day1/pengke.txt','utf-8',(err,datas)=>{
        if(err){
            console.log("读取失败");
            return;
        }
        //响应数据
    resp.writeHead(200,{'Content-Type':'text/html;charset=utf-8'});
    resp.write(datas);
    // resp.end();
    })
    
    

});
server.listen(port);

console.log("服务器运行了....http://127.0.0.1:"+port);

内置模块的练习就完结.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

碰磕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值