• Node.js- Express框架


    一、Express简介

    1.Express是一个简洁而灵活的node.jsWeb应用框架,提供了一系列强大特性帮助你创建各种web应用,和丰富的http工具。

    2.使用Express可以快速搭建一个完整功能的网站。

    3.Express框架核心特性

    1.1 可以设置中间件来响应HTTP请求

    1.2 定义来路由表用于执行不同的HTTP请求动作

    1.3 可以通过向模版传递参数来动态渲染HTML页面

    二、安装Express

     

    以上命令会将Express框架安装在当前目录的node_modules目录中,node_modules目录下会自动创建express目录。

    以下几个重要的模块是需要与express框架一起安装的:

    1.  body-parser - node.js中间件,用于处理JSON,Raw,Text和URL编码的数据。

    2. cookie-parser - 这就是一个解析cookie的工具。通过req.cookies可以去到传过来的cookie,并把他们转成对象。

    3. multer - node.js中间件,用于处理enctype="multipart/form-data" (设置表单的MIME编码)的表单数据。

     

    三、Express实例

     

     

    执行结果为:

     

     

    四、请求和响应

    express应用使用回调函数的参数,request和response对象来处理请求和响应的数据。

    app.get('/', function(req, res){

    // --

    }) 

    request 和response对象的具体介绍

    1. Request对象 - request对象表示HTTP请求,包含来请求查询字符串,参数,内容,HTTP头部等属性。

    常见的属性有:

    1.1 req.app : 当callback为外部文件时,用req.app访问express的实例

    1.2 req.baseUrl: 获取路由当前安装的URL路径

    1.3 req.body/ req.cookies: 获得【请求主体】/Cookies

    1.4 req.fresh/ req.stale: 判断请求时否还【新鲜】

    1.5 req.hostname/ req.ip : 获取主机名和IP地址

    1.6 req.originalUrl: 获取原始请求URL

    1.7 req.params: 获取路由的parameters

    1.8 req.path: 获取请求路径

    1.9 req.protocal: 获取协议类型

    1.10 req.query : 获取URL的查询参数串

    1.11 req.route : 获取当前匹配的路由

    1.12 req.subdomains: 获取子域名

    1.13 req.accepts(): 检查可接收的请求的文档类型

    1.14 req.acceptsChasets/ req.acceptsEncodings/ req.acceptsLanguages: 返回指定字符集的第一个可接受字符编码

    1.15 req.get() : 获取指定的HTTP请求头

    1.16 req.is() : 判断请求头 Content-Type的MIME类型

    2.Response对象 - response对象表示HTTP响应,即在接收到请求时向客户端发送的HTTP响应数据。常见属性有:

    2.1 res.app : 同req.app 一样

    2.2 res.append() : 追加指定的HTTP头

    2.3 res.set() 在res.append() 后将重置之前设置的头

    2.4 res.cookie(name, value[,option]): 设置Cookie

    2.5 option: domain/expires/ httpOnly/maxAge/path/secure/ signed

    2.6 res.clearCookie(): 清除Cookie

    2.7 res.download(): 传送指定路径的文件

    2.8 res.get() : 返回指定的HTTP头

    2.9 res.json() :   传送JSON响应

    2.10 res.jsonp() : 传送JSONP响应

    2.11 res.location(): 只设置响应的Location HTTP头,不设置状态码或者close response

    2.12 res.redirect() : 设置响应的Location HTTP头,并且设置状态码302

    2.13 res.render(view, [locals],callback): 渲染一个view,同时向callback传递渲染后的字符串,如果在渲染过程中有错误发生next(err)将会被自动调用。callback将会被传入一个可能发生的错误以及渲染后的页面,这样就不会自动输出了。

    2.14 res.send(): 传送HTTP响应

    2.15 res.sendFile(path[, optins][, fn]): 传送指定路径的文件- 会自动根据文件extension设定Content-Type

    2.16 res.set(): 设置HTTP头,传入object可以一次设置多个头

    2.17 res.status(): 设置HTTP状态码

    2.18 res.type() : 设置Content-Type的MIME类型

  • 相关阅读:
    ASP VNext 开源服务容错处理库Polly使用文档
    .NET Core开源API网关 – Ocelot中文文档
    Open ID Connect(OIDC)在 ASP.NET Core中的应用
    ASP.NET Core 系列视频完结,新项目实战课程发布。
    这应该是目前最快速有效的ASP.NET Core学习方式(视频)
    极简版ASP.NET Core学习路径及教程
    全面理解 ASP.NET Core 依赖注入
    向ASP.NET Core迁移
    ASP.NET Core集成现有系统认证
    Gitlab CI 自动部署 asp.net core web api 到Docker容器
  • 原文地址:https://www.cnblogs.com/plBlog/p/11431387.html
Copyright © 2020-2023  润新知