当调用
res.end()
方法,向客户端发送中文内容的时候,会出现乱码问题,此时,需要手动设置内容的编码格式原代码:
//导入http模块 const http = require('http') //创建实例对象 const server = http.createServer(); //给实例对象绑定request事件 server.on('request', (req, res) => { //定义一个字符串,包含中文的内容 const str = `您请求的 URL 地址是 ${req.url},请求的 method 类型为 ${req.method}` //res.end() 将内容响应给客户端 res.end(str) }) //启动服务器 server.listen(80, () => { console.log('server running at http://127.0.0.1'); })
调用 res.setHeader()方法,设置 Content-Type 响应头,解决中文乱码的问题
代码如下:
//导入http模块 const http = require('http') //创建实例对象 const server = http.createServer(); //给实例对象绑定request事件 server.on('request', (req, res) => { //定义一个字符串,包含中文的内容 const str = `您请求的 URL 地址是 ${req.url},请求的 method 类型为 ${req.method}` // 为了防止中文乱码问题,需要设置响应头, res.setHeader('Content-Type', 'text/html; charset=utf-8') //res.end() 将内容响应给客户端 res.end(str) }) //启动服务器 server.listen(80, () => { console.log('server running at http://127.0.0.1'); })