HTTP服务器 读取文件目录(fs.readdir)

服务器:

// 1.加载http核心模块
var http = require('http');

// 2.使用http.createServer()创建一个web服务器
var server = http.createServer();

// 3.服务器要做的事儿
// 提供服务:对数据服务
// 发请求
//	接收请求
//	处理请求
//	反馈(发送响应)
//	当客户端请求过来,就会自动触发服务器的request请求事件,然后执行第二个参数:回调处理函数
server.on('request',function(){
    console.log('收到客户的请求了');
})

// 4.绑定端口号,启动服务
server.listen(3000,function(){
    console.log('runing...');
})

var http = require('http')

var server = http.createServer()

// request 请求事件处理函数,需要接收两个参数:
//    Request 请求对象
//        请求对象可以用来获取客户端的一些请求信息,例如请求路径
//    Response 响应对象
//        响应对象可以用来给客户端发送响应消息
server.on('request', function (request, response) {
  // http://127.0.0.1:3000/ /
  // http://127.0.0.1:3000/a /a
  // http://127.0.0.1:3000/foo/b /foo/b
  console.log('收到客户端的请求了,请求路径是:' + request.url)

  // response 对象有一个方法:write 可以用来给客户端发送响应数据
  // write 可以使用多次,但是最后一定要使用 end 来结束响应,否则客户端会一直等待
  response.write('hello')
  response.write(' nodejs')

  // 告诉客户端,我的话说完了,你可以呈递给用户了
  response.end()

  // 由于现在我们的服务器的能力还非常的弱,无论是什么请求,都只能响应 hello nodejs
  // 思考:
  //  我希望当请求不同的路径的时候响应不同的结果
  //  例如:
  //  / index
  //  /login 登陆
  //  /register 注册
  //  /haha 哈哈哈
})

server.listen(3000, function () {
  console.log('服务器启动成功了,可以通过 http://127.0.0.1:3000/ 来进行访问')
})

//请求不同路迳响应不同结果
var http = require('http')
// 1.创建Server
var server = http.createServer();
// 2.监听request请求事件,设置请求处理函数
server.on('request', function (req, res) {
    console.log('收到请求了,请求路径是:' + req.url)
    console.log('请求我的客户端的地址是:', req.socket.remoteAddress, req.socket.remotePort);

    // res是response的简写
    // res.write('hello');
    // res.write(' world');
    // res.end();
    // 上面的方式比较麻烦,可以使用更简单的方法,直接end发送响应数据
    // res.end('hello nodejs');

    // 根据不同的请求路迳发送不同的响应结果
    // 1.req.url获取到端口号之后的那一部分路径
    // 也就是说所有的url都是以/开头的
    // 也就是说所有的url都是以/开头的
    // 判断路径处理响应
    var url = req.url;
    if (url === '/') {
        res.end('index page');
    } else if (url === '/login') {
        res.end('login page');
    } else if (url === '/products') {
        var products = [{
                name: '苹果',
                price: 888
            },
            {
                name: '菠萝',
                price: 5000
            },
            {
                name: '小辣椒 X',
                price: 1999
            }
        ]

        // 响应的内容只能是二进制数据或者字符串
        // 数字
        // 对象
        // 数组
        // 布尔值
        res.end(JSON.stringify(products))
    } else {
        res.end('404 NOT Found');
    }
})
// 3.绑定端口号,启动服务
server.listen(4000, function () {
    console.log('服务器启动成功,可以访问了....');
})

读取文件目录(fs.readdir)

var fs = require('fs')

fs.readdir('D:/Movie/www', function (err, files) {
  if (err) {
    return console.log('目录不存在')
  }
  console.log(files)
})

posted @ 2021-05-08 22:18  .爬行的蜗牛  阅读(807)  评论(0编辑  收藏  举报
Document