node.js(3)——express

express框架

【基于nodejs,用于构建web服务器的框架】

官网:www.expressjs.com.cn

安装:npm install express

例1:创建web服务器

// 引入express第三方模块
const express = require('express');
// 创建web服务器
var server=express();
server.listen(3000,()=>{
    console.log('success');
});

1、路由:

  浏览器向web服务器发来请求,web服务器要根据请求的方法和请求的url来做出响应。

  路由三要素:请求的方法、请求的url、响应的内容;

  响应对象(res):

    res.send()   响应文本,只能响应一次send,如果是数字认为是状态码;

    res.sendFile()     响应文件,必须使用绝对路径(__dirname)

    res,redirect()      响应的重定向

例2:接收请求 做出响应

扫描二维码关注公众号,回复: 7855305 查看本文章
// 引入express第三方模块
const express = require('express');
// 创建web服务器
var server=express();
server.listen(3000,()=>{
    console.log('success');
});

/* 接收浏览器的请求
1、根据请求的url和方法做出不同的响应
2、 ————给服务器添加路由(根据请求的url)
3、请求的url:/login   请求的方法是get
*/

server.get('/login',(req,res)=>{
    // req   请求的对象
    // res   响应的对象
    // 响应文本
    res.send('this is login page!');

});

例3:send结束后不允许再次send

/* 练习:创建路由,
1、请求的方法是get   请求的url:/index   this is index page
2、 post     /login    this is login page
3、 get      /detail   this is detail
*/

// 引入第三方模块express
const express=require('express');
// 创建web服务器
var server = express();
// 监听端口
server.listen(3000);
// 接收请求 做出响应
server.get('/index',(req,res)=>{
    res.send('this is index page!');
});
server.get('/detail',(req,res)=>{
    res.send('this is detail page!');
});
server.post('/login'(req,res)=>{
    res.send('this is login page!');
});

例4:响应一个文件(必须使用绝对路径)

【.html文件】

<!-- index.html -->

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
    <h1>test</h1>

</body>
</html>

【.js文件】

// 引入第三方模块express
const express=require('express');
// 创建web服务器
var server = express();
// 监听端口
server.listen(3000);
// 接收请求 做出响应
server.get('/index',(req,res)=>{
    //res.send('this is index page!');
    res.sendFile(__dirname+'/index.html');
});

例5:重定向

// 引入第三方模块express
const express=require('express');
// 创建web服务器
var server = express();
// 监听端口
server.listen(3000);
// 接收请求 做出响应
server.get('/index',(req,res)=>{
    //res.send('this is index page!');
    res.sendFile(__dirname+'/index.html');
});
// 重定向到/index
server.get('/',(req,res)=>{
    res.redirect('/index');
});

例6:

/*
使用express创建web服务器,创建以下路由
get  '/index'       发送文本“这是首页”
get  '/login'       送文件“login.html”
post '/register'    发送文本“注册成功”
get  '/'            跳转到/index
*/


// 引入express模块
const express=require('express');
// 创建web服务器
var server=express();
// 监听端口
server.listen(3000);
// 发出请求接收响应
server.get('/index',(req,res)=>{
    res.send('this is index page!');
});
server.get('/login',(req,res)=>{
    res.sendFile(__dirname+'/login.html');
});
server.post('/register',(req,res)=>{
    res.send('success');
});
server.get('/',(req,res)=>{
    res.send('/index');
});

 

猜你喜欢

转载自www.cnblogs.com/hd-test/p/11859259.html