(二) node.js 常用基础API

一、path 路径

用于处理文件路径和目录路径的模块

const path = require('path');

console.log(path.basename("./src/api/http.js"));
console.log(path.dirname("./src/api/http.js"));
console.log(path.extname("./src/api/http.js"));
console.log(path.format({ dir: "c:/src/api",base: "http.js" }));
console.log(path.parse("c:/src/api/http.js"));
console.log(path.join('/src', 'api/home', 'http.js', '..'));
image.png

二、fs 文件系统

用于与文件系统进行交互的模块

    1. 写入文件操作
const fs = require('fs');
const path = require("path");

fs.writeFile(
  path.join(__dirname, 'message.txt'), 
  'hello world, welcome to study nodejs!',
  (err) => { if(err) { 
    console.log(new Error(err));
    return new Error(err) }
    console.log("写入成功!");
  }
)
当前目录下新增一个message.txt文件
    1. 读取文件操作
const fs = require('fs');
const path = require("path");

fs.readFile(path.join(__dirname, 'message.txt'), (err, data) => {
  if (err) {
    console.log(new Error(err));
    return new Error(err);
  }
  console.log(data);
  console.log(data.toString());
})
读取文件buffer并转化成string
  • 3.创建与读取、删除目录操作
fs.mkdir(path.join(__dirname, 'parents/child'), { recursive: true }, (err) => {
  if (err) {
    return new Error(err);
  }
  console.log('创建成功!');
  fs.readdir(__dirname, (err, files) => {
    if (err) {
      console.log(new Error(err));
      return new Error(err);
    }
    console.log(files);
    fs.rmdir(path.join(__dirname, 'parents/child'), (err) => {
      if (err) {
        console.log(new Error(err));
        return new Error(err);
      }
      console.log('删除成功!');
    })
  })
})
mkdir & readir

三、http 服务

提供使用HTTP服务器和客户端的API

1、搭建静态服务器

1.1) 根据不同请求,响应不同内容

// 1. 加载模块
const http = require('http');
// 2. 创建服务
const server = http.createServer();
// 3. 监听请求事件(事件驱动)
server.on('request', (req, res) => {
  res.setHeader('Content-Type', 'text/html; charset=utf-8');
  res.write(`

Hello World!!!

你好,世界!!!

`); res.end(); }) // 4. 监听端口,开启服务 server.listen(8081, () => { console.log('http://localhost:8081'); })
image.png

1.2) 根据不同请求,响应不同文件

const http = require("http");
const fs = require('fs');
const path = require('path');

http.createServer(function(req, res) {
  res.setHeader("Content-Type", "text/html; charset=utf-8");
  if (req.url === "/" || req.url === "/index") {
    fs.readFile(path.join(__dirname, "pages", "index.html"), function (err, data) {
      if (err) {
        console.log(new Error(err));
        return new Error(err);
      }
      res.end(data);
    });
  } else if (req.url === "/login") {
    fs.readFile(path.join(__dirname, "pages", "login.html"), function (err, data) {
      if (err) {
        console.log(new Error(err));
        return new Error(err);
      }
      res.end(data);
    });
  } else {
    fs.readFile(path.join(__dirname, "pages", "404.html"), function (err, data) {
      if (err) {
        console.log(new Error(err));
        return new Error(err);
      }
      res.end(data);
    });
  }
}).listen(8081, () => {
   console.log("http://localhost:8081");
 });

你可能感兴趣的:((二) node.js 常用基础API)