EXPRESS

  重要的模块

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

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

    multer: node.js中间件,用于处理enctype='multipart/form-data'(设置表单的MME编码)的表单数据;

  

  请求和响应

    即request和response对象来处理请求和响应的数据;

    requset对象:

      表示HTTP请求,包含了请求查询字符串,参数,内容,HTTP头部等属性。

      属性:

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

        2、req.baseUrl: 获取路由当前安装的URL路径;

        3、req.body/req.cookies:获取请求体/Cookie;

        4、req.fresh/req.state:判断请求是否还[新鲜];

        5、req.hostname/req.ip:获取主机名和IP地址;

        6、req.originalUrl: 获取原始请求Url;

        7、req.params:获取路由的parameters;

        8、req.path: 获取请求路径;

        9、req.protocol: 获取协议类型;

        10、req.query: 获取URL的查询参数;

        11、req.route: 获取当前匹配的路由;

        12、req.subdomains:获取子域名;

        13、req.accepts(): 检查可接受的请求的文档类型;

        14、req.acceptsCharsets/req.acceptsEncodings/req.acceptslanguages: 返回指定字符集的第一个可接受字符编码;

        15、req.get(): 获取指定的HTTP请求头;

        16、req.is(): 判断请求头Content-Type的MME类型;

    response对象:

      表示HTTP响应,即在接收到请求时向客户端发送的HTTP响应数据;

      属性:

        1、res.app: 同req.app一样;

        2、res.append(): 追加指定的HTTP头;

        3、res.set():在res.append()后将重置之前设置的头;

        4、res.cookie(name,value,options): 设置Cookie;

        5、option: domain/expires/httpOnly/maxAge/path/secure/signed;

        6、res.clearCookie(): 清除Cookie;

        7、res.download(): 传送指定路径的文件;

        8、res.get(): 返回指定的HTTP头;

        9、res.jsonp(): 传送JSONP响应;

        10、res.json(): 传送JSON响应;

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

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

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

        14、res.send(): 传送HTTP响应;

        15、res.sendFile(path,options,fn): 传送指定路径的文件-会自动根据文件extension设定Content-Type;

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

        17、res.status(): 设置HTTP状态码;

        18、res.type(): 设置Content-TYpe的MIME类型;

  静态文件

    Express提供了内置的中间件express.static来设置静态文件;

    例如: app.use(express.static('pulic')); 然后我们就可以在public目录下放置图片,css,js等静态内容了

  REST

    REST是表属性状态传递(英文:Representational State Transter, 简称REST);  表述性状态转移是一组架构约束条件和原则,满足这些约束条件和原则的应用程序或设计就是RESTful。但是需要注意的是,REST就是设计风格而不是一种标准;REST通常使用JSON数据格式。

转载于:https://www.cnblogs.com/mufc/p/10101903.html

node.js(八 --- express)相关推荐

  1. 用node.js和express.js和jade搭建轻型cms系统

    http://cnodejs.org/topic/4f16442ccae1f4aa270010bf 前言: 我们主要做的是iphone/ipad程序,但关注node.js很久,因为我们多少总是要做网站 ...

  2. 使用 Node.js、Express、AngularJS 和 MongoDB 构建一个Web程序

    为什么80%的码农都做不了架构师?>>>    使用 Node.js.Express.AngularJS 和 MongoDB 构建一个实时问卷调查应用程序 2014 年 3 月 20 ...

  3. Installing Node.js and Express on Ubuntu

    Installing Node.js and Express on Ubuntu 1. 在nodejs官网上下载Linux Binaries(已经包含了npm): 2. 安装Node.js 下载后解压 ...

  4. 如何使用Node.js,Express和MongoDB设置GraphQL服务器

    by Leonardo Maldonado 莱昂纳多·马尔多纳多(Leonardo Maldonado) 如何使用Node.js,Express和MongoDB设置GraphQL服务器 (How to ...

  5. node.js安装express(零起点搭建本地测试服务器)- 教程篇

    (含图文教程.代码对比,等)node.js安装express(零起点搭建本地测试服务器)- 教程篇 原教程 · 参考地址 执行step3之后,结果截图 · 如下图2 : 之后,执行step4,截图如下 ...

  6. Node.js结合Express框架项目搭建

    一.简述 本次项目是用node.js写后台接口,前端使用vue.js分离的方法实现一个在线点咖啡的项目.本节教程只是一个简单的入门,关于实际用法后期继续更新. 二.搭建应用 1. 通过应用生成器工具 ...

  7. 使用Node.js的Express框架搭建和开发项目

    在搭建项目前,需要安装node.js,npm node.js安装方法 ,npm安装方法 接下来我们来创建express项目 1.选择项目安装目录 假如选择D:\projects\node\blog作为 ...

  8. 【前端——Node.js】:Express、数据库与身份认证

    一.Express 1.express路由 (1)路由 路由就是映射关系.在Express中,路由是指客户端的请求与服务器处理函数之间的映射关系 (2)路由匹配的过程 (3)模块化路由 为了方便对路由 ...

  9. Node.js之 express写后端接口

    参考 https://blog.csdn.net/studysinklc/article/details/103166451 一 1 首先,新建一个Node.js项目,在项目目录下安装express ...

最新文章

  1. 阿里三面,P9面试官是如何360°无死角考察候选人的?
  2. 借助Scrum工作室使用敏捷原则提升组织响应能力
  3. 作用c语言算圆的周长,C语言入门级代码 输入圆的半径求出圆的周长及面积
  4. 百度定位sdk使用说明
  5. Python之pandas:pandas中to_csv()、read_csv()函数的index、index_col(不将索引列写入)参数详解之详细攻略
  6. Android 编程下通知的发送
  7. vue cli 4 多环境_Vue 前端uni-app多环境配置部署服务器的问题
  8. android摄像头框架,FS_S5PC100平台上Android Camera架构分析
  9. 云服务器cvm只能弄网站么,云服务器cvm与建站主机区别
  10. 产品经理如何培养敏锐的商业嗅觉
  11. php package manager,package命令的安装教程
  12. 软件测试的基础知识(六)
  13. 后台扫描与备份文件泄露(御剑+dirsearch使用)
  14. 小程序mqtt实现聊天功能
  15. 05【应用工具简介】PM 流程图,思维导图,原型图绘制?怎么绘制不被解雇?
  16. 在java中获取全年的节假日(包含周末和法定节假日及调休日)
  17. 只做正确的事情,并持续输出价值
  18. Apple Pay编程指南(5) - 处理付款结果
  19. 申报绿色工厂对企业意义
  20. 国外流行网上支付方式

热门文章

  1. HDU 5996 dingyeye loves stone [阶梯Nim]
  2. android显示通知栏Notification以及自定义Notification的View
  3. GCC 用 C++ 来编译(酷壳)
  4. 气愤ing,身份证丢了到底要不要挂失?
  5. 实验楼python挑战答案_python基础知识
  6. 如何系统自学python_如何系统地自学 Python?
  7. RocketMQ的安装与启动
  8. 分布式与系统架构的演变
  9. 14Linux远程登录And15Linux远程文件传输
  10. Hybrid Data Fusion (HDF)——数据融合