Nodejs的express使用教程_node.js

Express 是一个简洁、灵活的 node.js Web 应用开发框架, 它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用。

1.express组织结构

app demo

    |---node_modules------用于安装本地模块。
    |---public------------用于存放用户可以下载到的文件,比如图片、脚本、样式表等。
    |---routes------------用于存放路由文件。
    |---views-------------用于存放网页的模板。
    |---app.js------------应用程序的启动脚本。
    |---package.json------项目的配置文件。

2..创建express服务器

//app.js文件
var express = require('express');
var app = express();
//指定更目录显示的内容
app.get('/', function(req, res){
 res.send('Hello World');
});
//指定监听端口
var server = app.listen(3000, function() {
  console.log('Listening on port %d', server.address().port);
});

运行nodejs应用程序

/>node app.js

3.中间件

中间件(middleware)就是处理HTTP请求的函数.
当一个HTTP请求进入服务器,服务器实例会调用第一个中间件,完成后根据设置,决定是否再调用下一个中间件.

中间件的参数为:

.四个的时候---第一个为错误处理,第二个为客户请求request,第三个为服务器响应respond,第四个为next中间件. 如function(error, request, response, next){}
.三个的时候---第一个客户请求request,第二个为服务器响应respond,第三个为next中间件. 如function(request, response, next){}
.两个的时候---第一个客户请求request,第二个为服务器响应respondfunction. 如function(request, response){}

4.使用中间件use

use是express调用中间件的方法,它返回一个函数.

app.use(function(request, response) {
 response.writeHead(200, { "Content-Type": "text/plain" });
 response.end("Hello world!\n");
});

5.错误内容显示

app.use(express.bodyParser());//使用body参数
app.use(express.methodOverride());//使用函数覆盖
app.use(app.router);//使用路由
app.use(function(err, req, res, next){
 console.error(err.stack);
 res.send(500, 'Something broke!');
});//错误内容显示

6.路由

express路由的方式有多种,这里举例常用的几种:

.app.use('/', middleware);//get/post时,对于路径/的处理
.app.get("/", middleware);//http中get时,对于路径/的处理
.app.post("/", middleware);//http中post时,对于路径/的处理
.app.put("/", middleware);//http中put时,对于路径/的处理
.app.delete("/", middleware);//http中delete时,对于路径/的处理

7.路径通配符*

.*表示所有路径

app.get("*", function(request, response) {
 response.end("404!");
});//所有路径都返回404

.:捕获路径内容

app.get("/hello/:who", function(req, res) {
 res.end("Hello, " + req.params.who + ".");
});//如"/hello/alice”网址,网址中的alice将被捕获,作为req.params.who属性的值

8.设置环境变量set

set用于指定变量的值.
app.set("view engine", "ejs");//使用ejs作为模版

9.response对象方法

.重定向redirect

    response.redirect("/hello/anime");//重定向到/hello/anime

.发送文件sendFile

   response.sendFile("/path/to/anime.mp4");

.渲染网页模板render,即把变换的内容加载到网页.
    response.render("index", { message: "Hello World" });//将message变量传入index模板,值为"Hello World"渲染成HTML网页

10.requst对象方法

.获取客户ip地址:request.ip

.获取上传的文件:request.files

11.启动脚本package.json

package.json用于指定app信息,nodejs版本号和其他组件的依赖关系

{
  "name": "demo",
  "description": "My First Express App",
  "version": "0.0.1",
  "dependencies": {
   "express": "3.x"
  }
}

12.app入口app.js

app.js主要包含http的创建,基本路由,监听端口号

13.动态网页模板views

views文件夹,用于存放所有的放网页模板.

//app.js
app.get('/', function(req, res) {
  res.render('index',{title:"最近文章"});
});
//index.js
this is <%=title%>!

14.指定静态网页目录

//app.js
app.use(express.static('public'));//指定静态网页目录,当浏览器发出非HTML文件请求时,服务器端就到public目录寻找这个文件

如:<link href="/bootstrap/css/bootstrap.css" rel="stylesheet">, 服务器端就到public/bootstrap/css/目录中寻找bootstrap.css文件

好了,本教程先给大家介绍到这里,后续还会持续给大家更新,谢谢大家一直以来对网站的支持。!

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索nodejs_express
nodejs_express教程
nodejs express 教程、nodejs express4 教程、nodejs express、nodejs安装express、nodejs express mysql,以便于您获取更多的相关知识。

时间: 2024-08-02 17:38:45

Nodejs的express使用教程_node.js的相关文章

node+express制作爬虫教程_node.js

最近开始重新学习node.js,之前学的都忘了.所以准备重新学一下,那么,先从一个简单的爬虫开始吧. 什么是爬虫 百度百科的解释: 爬虫即网络爬虫,是一种自动获取网页内容的程序.是搜索引擎的重要组成部分,因此搜索引擎优化很大程度上就是针对爬虫而做出的优化. 通俗一点讲: 把别人网站的信息给弄下来,弄到自己的电脑上.然后再做一些过滤,比如筛选啊,排序啊,提取图片啊,链接什么的.获取你需要的信息. 如果数据量很大,而且你的算法又比较叼,并且可以给别人检索服务的话,那么你的爬虫就是一个小百度或者小谷歌

win7下安装配置node.js+express开发环境_node.js

1.安装 node.js. 进入官网的下载地址:http://www.nodejs.org/download/ . 选择Windows Installer或者选择Windows Installer (.msi) 32-bit,下载安装包. 下载完成后,双击安装. 2.安装 Express. 通过nmp包管理器进行安装,安装分为: 全局安装:自动安装到"C:\Users\[当前用户]\AppData\Roaming\npm"下,并且自动将路径添加到环境变量"Path"

在Mac OS下使用Node.js的简单教程_node.js

这里有一篇很好的 Node.js 介绍文章 great nodejs intro ,它将给你一个非常方便的介绍 Node.js 和 CouchDB,并给出一个实例实现 REST 的服务用于执行书签的 CRUD 操作,使用 CouchDB 作为数据库. 本文将介绍在 Mac OS X 下安装并开始使用 Node.js ,这个过程大概需要 30 分钟左右的时间,其中我们还将安装 CouchDB,并实现基于 CouchDB 的 REST API. 本文假设你机器上已经装有Git,如果还没有,请参考此文

node.js中 stream使用教程_node.js

这些日子跑去学了一下OC,但是还没有学成.离转行的时间还有很长,顺便回顾一下node的知识. 每种语言来来去去的人很多,但我就离不开node.我并不是使用它开发,只是使用js相对多一些,因此还是研究node比较好,stream在node的地位是很高的.闲时也来看看这个内容,在node的路上,我还是新手. 今天下载了nodeschool的课程看,其中有一个例子.(我修改了一点点) var concat = require('concat-stream'); var http = require('

Angularjs---项目搭建图文教程_node.js

开发工具采用WebStorm,没破解,使用了过期策略:安装之后不着急打开程序,先设置系统日期为未来的某个日期,比如2020年.然后再打开程序,试用.然后再改回来系统日期.虽然每次打开WebStorm都会提示: 不过不影响使用,点击"OK"继续吧. 项目采用anguarjs seed项目作为基础框架,搭建完成之后如下: .bowerrc的配置如下: { "directory": "app/lib"} 3. app中的各view拆分成不同的目录存放,

使用forever管理nodejs应用教程_node.js

何为forever forever可以看做是一个nodejs的守护进程,能够启动,停止,重启我们的app应用.官方的说明是说: 复制代码 代码如下: A simple CLI tool for ensuring that a given script runs continuously (i.e. forever).// 一个用来持续(或者说永远)运行一个给定脚本的简单的命令行工具 Github地址:https://github.com/nodejitsu/forever forever用途 f

Node.js+Express配置入门教程_node.js

Node.js是一个Javascript运行环境(runtime).实际上它是对Google V8引擎进行了封装.V8引 擎执行Javascript的速度非常快,性能非常好.Node.js对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得更好.Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快.易于扩展的网络应用.Node.js 使用事件驱动, 非阻塞I/O模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的

NodeJS中的MongoDB快速入门详细教程_node.js

MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 一.MongoDB必须理解的概念 1.数据库:每个数据库都有自己的权限和集合. 2.文档:一个键值对. 3.集合:一组文档,即一组键值对.当第一个文档插入时,集合就会被创建. 二.Mac下的MongoDB安装和启动 1.使用brew进行安装:brew ins

Windows系统下Node.js的简单入门教程_node.js

随着近日Paypal和Netflix宣告 迁移到Node.js, 服务器端Javascript平台已经证明其自身在企业领域的价值. 这对于Node来说是一小步,对于Javascript而言却是一大跨越啊! 来自.NET, Java, PHP, Ruby on Rails和更多技术领域的程序员, 所有游走于服务器端的编码者都会聚集到这个平台上. 作为像 Yahoo, Walmart, 和 Oracle 这样的大玩家入局,, Node 正在甩掉其一直就存在的不成熟和不稳定的坏名声. 在这篇文章中,我