node原生-----操作文件-----构建服务器

时间:2021-07-28 17:58:31

浏览器中的JavaScript是没有能力操作文件的,但是node中的JavaScript有—-可以操作文件

想要在node中操作文件,需要先引入fs(file system)这个核心模块,在fs这个模块中,提供了所有的操作文件的API,使用require加载fs核心模块

加载核心模块

var fs = require('fs');

读取文件

fs.readFile(‘./data/hello.txt’,function(error,data){});

参数:

第一个参数:文件的路径,以./开头

第二个参数:回调函数

回调函数有连个参数:

    成功:

        data:数据

        error:null

    失败:

        data:undefined  没有数据

        error:错误对象

写文件

fs.writeFile('./data/你好.md','大家好,我是node.js',function(error){



})

参数:

第一个参数,要写入的文件路径

第二个参数:文件内容

第三个参数:回调函数(node 里面,涉及到文件,基本上都是回调函数,因为是异步的)

形参:error

    成功:error 为null 

    失败 :error就是错误对象

node构建服务器

使用node 可以很轻松的构建服务器,node中专门提供了一个核心模块http

1.加载http核心模块

var http = require('http');

2.使用http.createServer()方法创建一个web服务器

此方法会返回一个实例

var server = http.createServer();

3.服务器要干嘛?

提供服务:对数据的服务

  • 接受请求
    注册request请求时间,
    当客户端请求过来,就会自动触发服务端的request请求事件,然后执行第二个参数回调处理函数
    server.on(‘request’,function(){
    console.log(‘已经收到客户端请求’);
    })

    处理请求:request请求对象
    请求对象获取客户端的一些请求信息,例如请求路径
    server.on(‘request’,function(request,response){
    console.log(‘已经接收到了客户端请求!’+request.url)
    })

    发送响应:response相应对象
    响应对象用来给客户端发送一些消息
    response对象有一个方法,response.write,可以给客户端发送响应数据
    write可以使用多次,但是最后,一定要使用end结束响应,否则客户端会一直等待
    server.on(‘request’,function(request,response){
    console.log(‘已经接收到了客户端请求!’+request.url)
    if (request.url == ‘/’) {
    response.write(‘你好’)
    response.end()
    }
    if (request.url == ‘/a’) {
    response.write(‘node.js’)
    response.end()
    }
    })

4.绑定端口号,启动服务器

server.listen(3000,function(){
    console.log("成功启动服务器!")
})