express中的路由

一、读取静态文件

基本代码:

"use strict";
const express = require("express");

let app = express();

//template是文件夹名
app.use("/www", express.static("template"));

//app.use(express.static("template"));

app.listen(8888, ()=> {
    console.log("正在监听8888");
});

读取静态文件有可以写一个参数,也可以写两个参数

一个参数就是需要读取的文件夹名,这样就可以通过  127.0.0.1:8888/index.html 访问到template文件夹下的index.html了

两个参数的话,第一个参数就是url中需要添加的路径   通过  127.0.0.1:8888/www/index.html  才可以访问到template文件夹下的index.html

二、路由Router

路由是为了模块化,将地址分类,把不同的Router放到不同的位置

blogRouter.js:

"use strict";
const express = require("express");
let blogRouter = module.exports = express.Router();
blogRouter.get("/index", (req, res)=> {
    res.send("blog-index");
})
blogRouter.get("/detail", (req, res)=> {
    res.send("blog-detail");
})

photoRouter.js:

"use strict";
const express = require("express");
let photoRouter = module.exports = express.Router();
photoRouter.get("/index", (req, res)=> {
    res.send("photo-index");
})
photoRouter.get("/detail", (req, res)=> {
    res.send("photo-detail");
})
//module.exports = photoRouter;//也可以这样写

Router.js:

"use strict";

const express = require("express");

let app = express();

//已加载express模块 内部在缓存中查找//导入模块
let blogRouter = require("./blogRouter"); //可以不写.js
let photoRouter = require("./photoRouter");
//读取文件
app.use("/blog", blogRouter);
app.use("/photo", photoRouter);

app.listen(8888, ()=> {
    console.log("正在监听8888");
});
时间: 2024-10-06 05:28:52

express中的路由的相关文章

浅析Express中的路由与应用模式

1. 引言 Express是一个基于Node.js的轻量级web开发框架,具有体积小,使用灵活等特点.查看Express的源码,如果不计供使用的中间件,主体框架只有一千余行代码,非常简练. Express模型的核心为Express中定义的路由和路由器.分析Express源码可发现Express的路由提供多种灵活的应用模式. 我们首先介绍一下Express中的路由.路由器相关概念.结构及其特点,然后针对典型场景描述使用Express路由的四种应用模式. 2.Express中的路由与路由器 Expr

精华 对express中next函数的一些理解

关于next主要从三点来进行说明: next的作用是什么? 我们应该在何时使用next? next的内部实现机制是什么? Next的作用 我们在定义express中间件函数的时候都会将第三个参数定义为next,这个next就是我们今天的主角,next函数主要负责将控制权交给下一个中间件,如果当前中间件没有终结请求,并且next没有被调用,那么请求将被挂起,后边定义的中间件将得不到被执行的机会. 何时使用Next 从上边的描述我们已经知道,next函数主要是用来确保所有注册的中间件被一个接一个的执

Web开发中 前端路由 实现的几种方式和适用场景

浅析Web开发中前端路由实现的几种方式 主题 Web开发 故事从名叫Oliver的绿箭虾`说起,这位大虾酷爱社交网站,一天他打开了 Twitter ,从发过的tweets的选项卡一路切到followers选项卡,Oliver发现页面的内容变化了,URL也变化了,但为什么页面没有闪烁刷新呢?于是Oliver打开的网络监控器(没错,Oliver是个程序员),他惊讶地发现在切换选项卡时,只有几个XHR请求发生,但页面的URL却在对应着变化,这让Oliver不得不去思考这一机制的原因- 叙事体故事讲完,

浅析Web开发中前端路由实现的几种方式

故事从名叫Oliver的绿箭虾`说起,这位大虾酷爱社交网站,一天他打开了 Twitter ,从发过的tweets的选项卡一路切到followers选项卡,Oliver发现页面的内容变化了,URL也变化了,但为什么页面没有闪烁刷新呢?于是Oliver打开的网络监控器(没错,Oliver是个程序员),他惊讶地发现在切换选项卡时,只有几个XHR请求发生,但页面的URL却在对应着变化,这让Oliver不得不去思考这一机制的原因… 叙事体故事讲完,进入正题.首先,我们知道传统而经典的Web开发中,服务器端

Express中文文档

Express 4.x API express 翻译 api文档 中文 -- express() express()用来创建一个Express的程序.express()方法是express模块导出的顶层方法. var express = require('express'); var app = express(); Methods express.static(root, [options]) express.static是Express中唯一的内建中间件.它以server-static模块为

express中间件和路由教程

一.路由1.通常HTTP URL的格式是这样的:http://host[:port][path] http表示协议. host表示主机. port为端口,可选字段,不提供时默认为80. path指定请求资源的URI(Uniform Resource Identifier,统一资源定位符),如果URL中没有给出path,一般会默认成"/"(通常由浏览器或其它HTTP客户端完成补充上). 所谓路由,就是如何处理HTTP请求中的路径部分.比如"http://xxx.com:80/u

Express中使用mongodb存储session

express默认有队session的支持,但是是存储在内存中的. 我们可以使用mongodb来存储会话. 但是express的各个版本中对该功能的写法是不同的. Express 2.x: app.use(express.session({ secret: settings.cookieSecret, store: new MongoStore({ db: settings.db })})); Express 3.x: var express = require('express');var m

Yaf零基础学习总结8-Yaf中的路由和路由协议

路由器主要负责解析一个请求并且决定什么module.controller.action被请求:它同时也定义了一种方法来实现用户自定义路由,这也使得它成为最重要的一个MVC组组件.为了方便自定义路由, Yaf摒弃了0.1版本中的自定义路由器方式, 而采用了更为灵活的路由器和路由协议分离的模式.也就是一个固定不变的路由器, 配合各种可自定义的路由协议, 来实现灵活多变的路由策略. 作为一个应用中的路由组件是很重要的,理所当然的路由组件是抽象的,这样允许作为开发者的我们很容易的设计出我们自定义的路由协

在ASP.NET MVC控制器中获取链接中的路由数据

在ASP.NET MVC中,在链接中附加路由数据有2种方式.一种是把路由数据放在匿名对象中传递: <a href="@Url.Action("GetRouteData","Home",new { ReturnUrl = Request.Url.PathAndQuery, x = 10})">走你</a> 一种是放在RouteValueDictionary对象中传递: <a href="@Url.Action