创建server.js

'use strict';
//http模块
var http = require('http');
//封装的方法
var handlers = require('./handlers'); //创建服务
var server = http.createServer(function(request, response) {
//url地址
var url = request.url; if(url === '/'){
handlers.homepage(request, response);
}else if (url === "/profile") {
handlers.profile(request, response);
} else {
handlers.notFound(request, response);
}
});
//端口3000
server.listen(3000);
console.log('start 3000');

handlers.js

'use strict';
//首页
exports.homepage = function(request, response){
response.setHeader('Content-Type', 'text/html');
response.end('<h1>helloworld</h1>')
}
//一个接口
exports.profile = function(request, response){
var profile = {
name : 'will',
age : 35
}
response.setHeader('Content-Type','application/json');
response.end(JSON.stringify(profile));
} //404
exports.notFound = function(request, response) {
response.statusCode = 404;
response.setHeader("Content-Type", "text/html");
response.end("<h1>404 Not Found!</h1>");
}

es6写法

1.下载babel-register

npm install babel-register -S

2.下载babel-preset-es2015

npm install babel-preset-es2015 --save-dev

main.js

require('babel-register');
require('./src/server');

server.js

import http from 'http';
import { homepage, notFound } from './handlers'; const server = http.createServer((request, response) =>{
homepage(request, response);
}); server.listen(3000);
console.log('listen 3000');

handlers.js

export function homepage(request, response){
response.setHeader("Content-Type", "text/html");
response.end("hello world");
} export function notFound(request, response){
response.setHeader("Content-Type", "text/html");
response.end("404");
}

6-最基础的服务-es6写法的更多相关文章

  1. React,React Native中的es5和es6写法对照

    es6用在React中的写法总结: 在es6还没有完全支持到浏览器的阶段里,已经有很多技术人员开始用es6的写法来超前编程了,因为有转义es6语法的工具帮助下,大家才可大量使用.解析看看es6写法用在 ...

  2. 创建基于MailKit和MimeKit的.NET基础邮件服务

    邮件服务是一般的系统都会拥有和需要的功能,但是对于.NET项目来说,邮件服务的创建和使用会较为的麻烦..NET对于邮件功能提供了System.Net.Mail用于创建邮件服务,该基础服务提供邮件的基础 ...

  3. react-native ES5与ES6写法对照表

    转载链接:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/react-native-es5-and-es6-writing-tabl ...

  4. Python web 框架之 Django 基础搭建服务

    1. 需要安装 Python 和 Django 环境,Python 环境的安装我就不在多说了 2. 安装框架 Django Django 安装,推荐先装个 pip吧,easyinstall也可以,然后 ...

  5. 【转】React Native中ES5 ES6写法对照

    很多React Native的初学者都被ES6的问题迷惑:各路大神都建议我们直接学习ES6的语法(class Foo extends React.Component),然而网上搜到的很多教程和例子都是 ...

  6. MailKit和MimeKit的.NET基础邮件服务

    MailKit和MimeKit的.NET基础邮件服务 邮件服务是一般的系统都会拥有和需要的功能,但是对于.NET项目来说,邮件服务的创建和使用会较为的麻烦..NET对于邮件功能提供了System.Ne ...

  7. JavaScript get set方法 ES5/ES6写法

    网上鲜有get和set的方法的实例,在这边再mark一下. get和set我个人理解本身只是一个语法糖,它定义的属性相当于“存储器属性” 为内部属性提供了一个方便习惯的读/写方式 ES5写法 func ...

  8. 十三.基础邮件服务、parted分区工具、交换分区、链路聚合

    1.基础邮件服务 DNS服务器:虚拟机classroom   以server0.example.com 为例  yg@server0.example.com    xln@server0.exampl ...

  9. 使用 C++ 编写的基础 Windows 服务 (CppWindowsService)

    最近项目中涉及到使用C++写一个后台服务程序,找了很多资料,还是使用Google搜索找到了比较详细点的资料,就是从微软官方MSDN的例子,如下: 使用 C++ 编写的基础 Windows 服务 (Cp ...

随机推荐

  1. iOS-Core-Animation-Advanced-Techniques(一)

    视图(UIView)和图层(CALayer)的关系: 每一个UIview都有一个CALayer实例的图层属性,视图的职责就是创建并管理这个图层,以确保当子视图在层级关系中添加或者被移除的时候,他们关联 ...

  2. Ubutnu16.04安装pytorch

    1.下载Anaconda3 首先需要去Anaconda官网下载最新版本Anaconda3(https://www.continuum.io/downloads),我下载是是带有python3.6的An ...

  3. java 多线程访问同一个对象数据保护的问题

    java 多线程同时访问统一个数据的时候,会引起一些错误,后面的线程会修改数据,而前面的线程还在使用修改前的内容, 使用 synchronized 关键字,保证代码块只能有一个线程来访问 public ...

  4. java源码学习(五)LinkedList

    LinkedList [TOC] 一.定义 public class LinkedList<E> extends AbstractSequentialList<E> imple ...

  5. Loadrunner12解决无法录制chrome及脚本为空问题

    首先,得安装LR12,一般用LR12录制,由于未破解,用LR11跑并发. LR12官方文档说明里是支持chrome及火狐的,但是实际录制起来,还是有一定的问题,目前发现的问题主要有两个: (1)LR录 ...

  6. (cljs/run-at (JSVM. :browser) "搭建刚好可用的开发环境!")

    前言  书接上一回,在了解cljs基本语法后并在clojurescript.net的奇特错误提示后,我们必须痛定思痛地搭建一个本地的开发环境,以便后续深入地学习cljs. 现有的构建工具  由于浏览器 ...

  7. Latex加速: TexStudio的安装和使用

    TexStudio可以加速Latex的编辑和写作,这里简单介绍一下TexStudio的安装,配置和使用.但是有一个重要的前提,TexStudio会使Latex源代码和pdf文件并排显示,比较占用桌面的 ...

  8. Sublime Text 3 注册码

    最近觉得Sublime Text3比Notepad++好使,可惜需要购买,于是网上搜了一下,屌丝的福音啊: Sublime Text Build 3065 License key复制如下三个任意一个正 ...

  9. 读书笔记-Software Testing(By Ron Patton)

    Software Testing Part I:The Big Picture 1.Software Testing Background Bug's formal definition 1.The ...

  10. peoplesoft function PSTREENODE 通过 deptid 获得部门树 全路径 code

    create or replace function getUnitFullcode(deptid in varchar) return varchar2 is r ); c int; n ); m ...