NODEJS - express

时间:2023-12-15 23:11:56

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');
});

//指定监听端口
 
app.listen(3000);

运行nodejs应用程序
/>node app.js

注:
   打开View 文件发现index.ejs比较不习惯,所以对app.js进行小改动:
   “app.set('view engine', 'ejs');” -》 “app.engine('.html', require('ejs').__express);  app.set('view engine', 'html');”
require() 用于在当前模块中加载和使用其他模块;此方法是模块的基础,使用中大概有路径的概念就行。PS:JS文件可以去掉".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.错误内容显示
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时,对于路径/的处理

8.设置环境变量set

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

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

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

 
res.render('index',{title:"最近文章"});
});

//index.js
this is <%=title%>!