使用node搭建简单的服务
//创建依赖模块
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搭建简单的服务的更多相关文章
- SpringBoot + Dubbo + zookeeper 搭建简单分布式服务
		
SpringBoot + Dubbo + zookeeper 搭建简单分布式服务 详细操作及源码见: https://github.com/BillyYangOne/dubbo-springboot
 - 搭建简单Django服务并通过HttpRequester实现GET/POST http请求提交表单
		
调试Django框架写的服务时,需要模拟客户端发送POST请求,然而浏览器只能模拟简单的GET请求(将参数写在url内),网上搜索得到了HttpRequester这一firefox插件,完美的实现了模 ...
 - node http模块搭建简单的服务和客户端
		
node-http Node.js提供了http模块,用于搭建HTTP服务端和客户端. 创建Web服务器 server.js /** * node-http 服务端 */ let http = req ...
 - node搭建简单的本地服务器
		
首先要安装node,方法很多,可以去网上找找,可以直接去官网下载安装,新版本的node是自带npm的: 安装好以后,新建一个js文件,名为server.js: let http = require(' ...
 - [转]php,使用Slim和Medoo搭建简单restful服务
		
本文转自:https://www.jianshu.com/p/32b6d0284d97 关于rest和orm框架的组合使用,几年前我就写过使用Slim+Notorm来搭建restful服务,不过看到N ...
 - 用node搭建简单的静态资源管理器
		
我们都知道,老牌的3p服务器都是自带静态资源管理器的.但是node不同,它没有web容器,它的路由地址和真实地址可以没有联系,所有node的优点,是可以把路由做得相当漂亮. 但静态资源管理器也是必不可 ...
 - python -m SimpleHTTPServer搭建简单HTTP服务
		
PYTHON自带HTTP服务,命令: python -m SimpleHTTPServer 使用上述命令将当前目录发布到8000端口,为当前进行,不是后台运行 指定端口: python -m Simp ...
 - 【从零开始】用node搭建一个jsonp&json服务
		
目录: 一.介绍 二.node安装 三.webstorm配置node环境 四.代码介绍 五.如何使用 六.自定义域名 七.其他 一.介绍 1.背景 日常工作中,跟后端商定好接口格式后:通常采用 ...
 - 用nodejs搭建一个简单的服务监听程序
		
作为一个从业三年左右的,并且从事过半年左右PHP开发工作的前端,对于后台,尤其是对以js语言进行开发的nodejs,那是比较有兴趣的,虽然本身并没有接触过相关的工作,只是自己私下做的一下小实验,但是还 ...
 
随机推荐
- junit单元测试报错Failed to load ApplicationContext,但是项目发布到tomcat浏览器访问没问题
			
junit单元测试报错Failed to load ApplicationContext,但是项目发布到tomcat浏览器访问没问题,说明代码是没问题的,配置也没问题.开始时怀疑是我使用junit版本 ...
 - 前端学习(十三)js运算符(笔记)
			
类型转换: 1.强制类型转换:(数字字符串转数字) parseInt() parseFloat() Number()--严格转换 NaN: 不是 ...
 - vue element-ui NavMenu错位问题
			
原因:子菜单全部打开后太长超过100% 解决方法:设置只能点击打开当前的菜单
 - nginx进行获取阿里云slb真实ip配置操作
			
环境: 1.使用阿里云的slb进行配置nginx,nginx无法获取用户的真实ip解决方案 参考阿里云: https://help.aliyun.com/knowledge_detail/40535. ...
 - mysql 毫秒时间转换
			
当在数据库中存储的时间类型为bigint类型时,及时间的毫秒数 java中: new DATE().gettime();//获取时间的毫秒数 当需要将毫秒数转化为时间的时候 mysql中: FROM ...
 - Java中IO流之字符流
			
我们有了字节流,为什么还需要字符流? 字符的底层是 字节 + 编码表 = 字符,字符是人能看懂的信息. 字符流在使用的时候,会以字节流为基础,把字节写入缓冲区,在缓冲区内根据编码类型(UTF-8,GB ...
 - JavaScript事件绑定的常见方式
			
在Javascript中,事件绑定一共有3种方式: ① 行内绑定 ② 动态绑定 ③ 事件监听 原文: https://mbd.baidu.com/newspage/data/landingsuper? ...
 - leetcode-12双周赛-1246-删除回文子数组
			
题目描述: 方法:区间dp O(N^3) class Solution: def minimumMoves(self, A: List[int]) -> int: N = len(A) dp = ...
 - 【LeetCode 6】Z 字形变换
			
题目链接 [题解] 还想着模拟这个过程.然后发现只有行有用啊!... 那就建个rows大小的字符串数组存每行从左到右的字符就行啦.. 然后就是i从1变到n然后又变回1反复就好了. 最后把1..rows ...
 - docker核心技术(2)
			
鸟瞰容器生态系统 一谈到容器,大家都会想到 Docker. Docker 现在几乎是容器的代名词.确实,是 Docker 将容器技术发扬光大.同时,大家也需要知道围绕 Docker 还有一个生态系统. ...