//创建依赖模块
var http = require('http');
var url = require('url');
var fs = require('fs');
var server = http.createServer();
var htmlDir = __dirname + '/';
//console.log(htmlDir);

//处理url请求
function sendData(file,req,res) {
    // console.log('file: ' + file);
    fs.readFile(file,function(err,data) {
        if(err) {
            res.writeHead(404,{
                'content-type':'text/html;charset=UTF8'
            });
            res.end('<h1>页面丢失</h1>');
            }else{
            res.writeHead(200,{
                'content-type':'text/html;charset=UTF8'
            });
            res.end(data);
        };
    });
}

server.on('request',function(req,res) {
    //console.log('收到客户端的请求了,路径是:' + req.url);
    
    //response对象write方法
    //获取url后面的路径
    let urlStr = url.parse(req.url);
    //判断url,返回响应数据
    switch (urlStr.pathname) {
        case '/':
            sendData(htmlDir + 'index.html',req,res);
            break;
        case '/a':
            sendData(htmlDir + 'a.html',req,res);
            break;
        case '/b':
            sendData(htmlDir + 'b.html',req,res);
            break;
        default:
            sendData(htmlDir + 'err.html',req,res);
            break;
    }
    
})
server.listen(3000,function() {
    console.log('服务启动成功了');
})

使用node搭建简单的服务的更多相关文章

  1. SpringBoot + Dubbo + zookeeper 搭建简单分布式服务

    SpringBoot + Dubbo + zookeeper 搭建简单分布式服务 详细操作及源码见: https://github.com/BillyYangOne/dubbo-springboot

  2. 搭建简单Django服务并通过HttpRequester实现GET/POST http请求提交表单

    调试Django框架写的服务时,需要模拟客户端发送POST请求,然而浏览器只能模拟简单的GET请求(将参数写在url内),网上搜索得到了HttpRequester这一firefox插件,完美的实现了模 ...

  3. node http模块搭建简单的服务和客户端

    node-http Node.js提供了http模块,用于搭建HTTP服务端和客户端. 创建Web服务器 server.js /** * node-http 服务端 */ let http = req ...

  4. node搭建简单的本地服务器

    首先要安装node,方法很多,可以去网上找找,可以直接去官网下载安装,新版本的node是自带npm的: 安装好以后,新建一个js文件,名为server.js: let http = require(' ...

  5. [转]php,使用Slim和Medoo搭建简单restful服务

    本文转自:https://www.jianshu.com/p/32b6d0284d97 关于rest和orm框架的组合使用,几年前我就写过使用Slim+Notorm来搭建restful服务,不过看到N ...

  6. 用node搭建简单的静态资源管理器

    我们都知道,老牌的3p服务器都是自带静态资源管理器的.但是node不同,它没有web容器,它的路由地址和真实地址可以没有联系,所有node的优点,是可以把路由做得相当漂亮. 但静态资源管理器也是必不可 ...

  7. python -m SimpleHTTPServer搭建简单HTTP服务

    PYTHON自带HTTP服务,命令: python -m SimpleHTTPServer 使用上述命令将当前目录发布到8000端口,为当前进行,不是后台运行 指定端口: python -m Simp ...

  8. 【从零开始】用node搭建一个jsonp&json服务

    目录: 一.介绍 二.node安装 三.webstorm配置node环境 四.代码介绍 五.如何使用 六.自定义域名 七.其他 一.介绍 1.背景     日常工作中,跟后端商定好接口格式后:通常采用 ...

  9. 用nodejs搭建一个简单的服务监听程序

    作为一个从业三年左右的,并且从事过半年左右PHP开发工作的前端,对于后台,尤其是对以js语言进行开发的nodejs,那是比较有兴趣的,虽然本身并没有接触过相关的工作,只是自己私下做的一下小实验,但是还 ...

随机推荐

  1. KiCAD绘制器件内部逻辑符号库

    KiCAD绘制器件内部逻辑符号库 像比较器,运放这些器件,里面是由多个相同的part组成,有时候我们只需要用到其中一个或者某几个,又或者是为了在原理图中更清楚的表达出逻辑关系,需要单独绘制内部的逻辑符 ...

  2. 使用ReadStream方法延时读取文件

    const fs = require('fs'); let file = fs.createReadStream("filenpath.js"); file.pause(); fi ...

  3. qdatatime大小

    QDateTime time1; QDateTime time2; uint stime = time1.toTime_t(); uint etime = time2.toTime_t(); int ...

  4. Java出现OutOf MemoryError(OOM 错误)的原因有哪些?出现OOM错误后,怎么解决?

    OutOf MemoryError这种错误可以细分为多种不同的错误,每种错误都有自身的原因和解决办法,如下所示: java.lang.OutOfMemoryError: Java heap space ...

  5. Spring Boot 2.0 常见问题总结(二)

    使用 IDEA 生成 POJO 实体类 a. 使用 idea 连接上需要操作的数据库. b. 选中要生成实体类的数据库表:右键 ---> Scripted Extensions ---> ...

  6. bootstrap 好看的上传组件

    <!DOCTYPE html> <html> <head> <title></title> <link rel="style ...

  7. 完爆 Best Fit,看阿里如何优化 Sigma 在线调度策略节约亿级成本

    摘要:2018 年“双 11”的交易额又达到了一个历史新高度 2135 亿.相比十年前,我们的交易额增长了 360 多倍,而交易峰值增长了 1200 多倍.相对应的,系统数呈现爆发式增长.系统在支撑“ ...

  8. javascript实现获取指定精度的上传文件的大小简单实例

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. Shell5

    sed文本编辑器(vim,notepad)非交互式的文本编辑器sed是逐行处理编辑器    sed [选项] ‘条件指令'  文件   #没有条件指令时,默认对全文所有进行修改sed的所有操作默认时在 ...

  10. Hadoop-HDFS的伪分布式和完全分布式集群搭建

    Hadoop-HDFSHDFS伪分布式集群搭建步骤一.配置免密登录 ssh-keygen -t rsa1一句话回车到底 ssh-copy-id -i ~/.ssh/id_rsa.pub root@no ...