zoukankan      html  css  js  c++  java
  • static-server

    var http = require('http')
    var fs = require('fs')
    var template = require('art-template')
    var path = require('path')

    var server = http.createServer()

    var wwwDir = 'D:/Movie/www'

    server.on('request', function (req, res) {
    var url = req.url
    // 1. 如果是文件,直接读取响应
    // 2. 如果是目录,读取渲染目录列表
    // 3. 如果目录并且有该目录中有 index.html 则直接渲染目录中的 index.html

    var urlPath = path.join(wwwDir, url)

    fs.stat(urlPath, function (err, stats) {
    if (err) {
    return res.end('404 Not Found.')
    }
    if (stats.isFile()) {
    fs.readFile(urlPath, function (err, data) {
    if (err) {
    return res.end('404 Not Found.')
    }
    res.end(data)
    })
    } else if (stats.isDirectory()) {
    var templateStr = fs.readFileSync('./static-template.html').toString()
    var files = fs.readdirSync(urlPath)
    // var data = files.map(function (item) {
    // return {
    // url:
    // name:
    // type:
    // }
    // })
    var htmlStr = template.render(templateStr, {
    files: files
    })
    res.end(htmlStr)
    }
    })
    })

    server.listen(3000, function () {
    console.log('running...')
    })
  • 相关阅读:
    .NET实现Excel文件的读写 未测试
    权限管理设计
    struts1中配置应用
    POJ 2139 Six Degrees of Cowvin Bacon(floyd)
    POJ 1751 Highways
    POJ 1698 Alice's Chance
    POJ 1018 Communication System
    POJ 1050 To the Max
    POJ 1002 4873279
    POJ 3084 Panic Room
  • 原文地址:https://www.cnblogs.com/lujieting/p/10296339.html
Copyright © 2011-2022 走看看