浅析Node.js实用的内置API
Node.js是一个基于Chrome V8引擎的JavaScript运行时环境,它可以让JavaScript在服务器端运行,是一种非常流行的后端开发技术。Node.js内置了许多有用的API,本篇文章将会介绍一些实用的Node.js内置API及其使用方法。
fs(文件系统)模块
fs模块是Node.js中与文件系统交互的API,可以方便的对文件进行读写操作。
示例一:读取文件内容
const fs = require('fs');
fs.readFile('filename.txt', 'utf8', (err, data) => {
if (err) throw err;
console.log(data);
});
代码解析:
使用require
函数加载Node.js内置的fs模块,读取文件时调用fs.readFile
函数,第一个参数是读取的文件名称,第二个参数是读取的文件编码方式,第三个参数是回调函数。回调函数中,当读取成功时,data参数表示读取到的文件内容,当读取失败时,err参数表示读取失败的信息。
执行时,如果读取成功,控制台将输出文件内容。如果读取失败,将抛出错误信息。
示例二:写入文件内容
const fs = require('fs');
fs.writeFile('filename.txt', 'Hello World!', function (err) {
if (err) throw err;
console.log('文件已保存!');
});
代码解析:
使用require
函数加载Node.js内置的fs模块,写入文件时调用fs.writeFile
函数,第一个参数是写入的文件名称,第二个参数是写入的文件内容,第三个参数是回调函数。回调函数中,当写入成功时,不需要传入参数,当写入失败时,err参数表示写入失败的信息。
执行时,如果写入成功,控制台将输出“文件已保存!”。如果写入失败,将抛出错误信息。
http模块
http模块是Node.js中与HTTP协议交互的API,可以方便的创建一个Web服务器。
示例一:创建一个简单的HTTP服务器
const http = require('http');
http.createServer((req, res) => {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(8080);
console.log('Server running at http://127.0.0.1:8080/');
代码解析:
使用require
函数加载Node.js内置的http模块,调用http.createServer
函数创建一个HTTP服务器,当接收到请求时,执行回调函数,回调函数的第一个参数req
表示请求对象,第二个参数res
表示响应对象。在回调函数中,使用res.writeHead
设置响应头信息,第一个参数是状态码,第二个参数是响应头,然后在回调函数中使用res.end
函数设置响应体信息。
执行时,执行输出“Server running at http://127.0.0.1:8080/”。在浏览器中输入http://127.0.0.1:8080/
,将看到浏览器中输出“Hello World”。
示例二:创建一个简单的Web服务器并处理POST请求
const http = require('http');
const querystring = require('querystring');
http.createServer((req, res) => {
if(req.method === 'POST'){
let body = '';
req.on('data', chunk => {
body += chunk.toString();
});
req.on('end', () => {
const data = querystring.parse(body);
res.writeHead(200, {'Content-Type': 'text/html;charset=utf-8'});
res.end(`<h1>Hello ${data.name}!</h1>`);
});
} else {
res.writeHead(200, {'Content-Type': 'text/html;charset=utf-8'});
res.end(`
<form method="POST">
<input type="text" name="name" /><br/>
<button type="submit">提交</button>
</form>
`);
}
}).listen(8080);
console.log('Server running at http://127.0.0.1:8080/');
代码解析:
使用require
函数加载Node.js内置的http模块和querystring模块,调用http.createServer
函数创建一个HTTP服务器,当接收到请求时,执行回调函数。在回调函数中,先判断请求的方法是否为POST,如果是POST,获取请求体中的数据,对数据进行处理并返回响应信息。如果是GET,返回一个简单的表单页面。
执行时,执行输出“Server running at http://127.0.0.1:8080/”。在浏览器中输入http://127.0.0.1:8080/
,将看到一个简单的表单页面,输入姓名并提交,将看到浏览器中输出“Hello XXXX!”的信息,XXX为输入的姓名。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅析Node.js实用的内置API - Python技术站