node语法学习

1.http

1.1 createServer 

使用 http.createServer() 方法创建服务器,并使用 listen 方法绑定 8888 端口。 函数通过 request, response 参数来接收和响应数据。

const http = require('http');

http.createServer((request,response) => {
      response.writeHead(200,{'Content-Type':'text/plain'});

      response.end('Hello World\n');
}).listen(888);


2.fs

2.1 readFileSync('./data.txt',[option])

option: {encoding: 编码格式,默认为null, flag: r|w 默认为r} 或者  '编码格式'

注意: 当不指定encoding事返回的是二进制buffer ,当制定时返回string

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

http.createServer((request,response) => {

    const data = fs.readFileSync('./data/data.txt')

	console.log(data.toString())
	response.writeHead(200,{'Content-Type':'text/plain'});

	response.end('Hello World\n'+data.toString());
}).listen(888);

结果:

乱码,编码问题,系统默认是gbk,而txt文件是utf-8

解决办法:

(1)参考这篇文章 读取文件->按二进制编码->再按utf-8编码  

const http = require('http');
const fs = require('fs');
const iconv = require('iconv-lite');

http.createServer((request,response) => {

    const data = fs.readFileSync('./data/data.txt')

    var buff = new Buffer(data,'binary');    //用于文件不是utf-8编码
	const str = iconv.decode(buff,'utf-8');  //用于文件不是utf-8编码
	response.writeHead(200,{'Content-Type':'text/plain;charset=utf-8'});   //指定页面的编码格式
	response.end('Hello World你好\n'+str+'\n'+data.toString());
}).listen(888);


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值