使用Enide Studio 2014 IDE进行Express JS路由
创建Express JS路由的简要步骤
其中我将为您提供在Express JS WebApplication中创建路由的步骤。
首先,我们将详细讨论Enide Studio 2014 IDE默认值" Node:Express JS Project"中的每个步骤。
然后,在接下来的部分中,我们将讨论如何创建自己的Express JS路由。
- 创建路由
- 创建视图
- 将所有新创建的路由文件加载到app.js中的变量中
- 将客户端请求的URL映射到app.js中的路由
- 开始应用程序和测试路由
探索默认的Express JS路由
当我们使用Enide Studio 2014 IDE创建Express JS Sample WebApplication时,它将在Project根目录下创建一个" app.js"文件。
这是访问Express JS应用程序的起点。
- 首先将" express"模块加载到我们的应用程序缓存中,然后创建Express JS Application,如下所示
var express = require('express'); var app = express();
- 它将所有Express JS路由文件放在" ${EXPRESSJS_PROJECT_ROOT_DIR} \ routes"文件夹下
我们的" expressjs"项目包含默认的两个路由文件:index.js和users.js
- 它将所有Express JS View文件放置在" ${EXPRESSJS_PROJECT_ROOT_DIR} \ views"文件夹下
作为默认的" Node JS:Express JS Project",它使用JADE作为默认的模板引擎,因此会在该位置创建玉器作为视图。
该项目包含默认的三个视图:index.jade,layoug.jade和error.jade
注意:-JADE是一个简单且功能强大的模板引擎框架,可非常轻松地设计和开发HTML页面。
请参考有关此框架的一些在线教程。
一段时间后,我将尝试在此JADE框架上发表一两个帖子。
- 在index.js中探索路由
index.js
var express = require('express'); var router = express.Router(); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'Express' }); }); module.exports = router;
代码说明
- 第1行,将Express JS模块加载到我们的应用程序缓存中,并将其存储到变量" express"中
- 第2行,使用Router类创建一个路由器对象。
我们使用" express"变量创建Router对象:" express.Router()" - 第5-7行,使用"路由器"对象,我们创建了一个函数来处理HTTP GET请求
- 第6行非常重要,因为在这里我们编写了路由。
当客户端或者WebBrowser使用HTTP GET Request方法使用" /"(即https://localhost:3000 /)发送请求时,该函数将把控制器路由到"索引"视图。
它会自动映射到" index.jade",并用" Express"值填充" title"属性(请参阅下面的index.jade文件)。
玉器
extends layout block content h1= title p Welcome to #{title}
这就是为什么当我们使用" https://localhost:3000 /"访问我们的应用程序时,我们得到以下输出,将该" title"属性值显示为" Express"。
注意:-我想大家都已经熟悉Spring MVC或者Struts框架。
即使在这些框架中,我们也可以进行类似的路由选择。
第9行,我们已导出路由器对象,以在相同或者不同项目中的其他模块中使用。
在users.js中探索路由
users.js
var express = require('express'); var router = express.Router(); /* GET users listing. */ router.get('/', function(req, res, next) { res.send('respond with a resource'); }); module.exports = router;
它只是index.js文件的副本,但此处未映射到任何视图。
我们只是向客户或者浏览器发送"带有资源响应"的响应文本。
如果使用" https://localhost:3000/users"访问相同的应用程序,则将在浏览器上获得以下输出:
- 探索app.js
开发好视图和路线后,现在就可以绘制它们了。
我们需要将它们映射到app.js文件中。
对于Node:Express JS应用程序,这是非常重要和凝视的重点。
当我们从项目根目录的命令提示符处执行" npm start"命令时,它将搜索" app.js"文件。
然后它将所有项目文件加载到服务器中,并等待客户端请求。
现在,我们将逐步了解如何将这些文件映射到" app.js"文件中。
- 第一步是将我们的路由文件加载到变量中,如下所示
var routes = require('./routes/index'); var users = require('./routes/users');
就像将其他Node JS模块加载到项目缓存中一样,我们使用require()调用将路由文件加载到变量中。
- 如下所示,使用" app" Express JS Application Object将URL映射到这些路由变量。
app.use('/', routes); app.use('/users', users);
这意味着,当客户端或者WebBroswer向我们的" Node:Express JS"应用程序发送请求时,应用程序会将这些URL映射到Hadlers,如下所示
https://本地主机:3000 /
https://localhost:3000/ --> It maps to app.use('/', routes); app.use('/', routes); --> It in turn maps to './routes/index.js' Then finally, it executes Functions defined in index.js Prepare Views and send that Response back to the Client
同样,https://localhost:3000/users
https://localhost:3000/users --> It maps to app.use('/users', users); app.use('/users', users); --> It in turn maps to './routes/users.js' Then finally, it executes Functions defined in users.js Prepare Views and send that Response back to the Client
创建新的Express JS路由
到目前为止,我们已经探讨了默认路由。
为了清楚起见,我们将创建一些新的路由。
我们将在USER域对象上提供以下CRUD操作路由。
我们不会编写太多逻辑来执行任何数据库逻辑。
我们只是显示一些消息。
/create ----> createUser.js /select ----> selectUser.js /delete ----> deleteUser.js /update ----> updateUser.js
请按照以下步骤"创建新的Express JS路由":
- 请在" ${EXPRESSJS_PROJECT_ROOT_DIR} \ routes"文件夹下创建新的路由文件
createUser.js
var express = require('express'); var router = express.Router(); /* GET users listing. */ router.get('/', function(req, res, next) { res.send('User Created Successfully.'); }); module.exports = router;
selectUser.js
var express = require('express'); var router = express.Router(); /* GET users listing. */ router.get('/', function(req, res, next) { res.send('Retrieved User Details Successfully.'); }); module.exports = router;
deleteUser.js
var express = require('express'); var router = express.Router(); /* GET users listing. */ router.get('/', function(req, res, next) { res.send('User Deleted Successfully.'); }); module.exports = router;
updateUser.js
var express = require('express'); var router = express.Router(); /* GET users listing. */ router.get('/', function(req, res, next) { res.send('User Updated Successfully.'); }); module.exports = router;
- 创建新的视图文件
在实时项目中,我们需要为每个路由创建一些HTML页面或者JADE模板或者任何视图。
但是,为简单起见,我们不会编写太多逻辑。
我们只是使用来自路由功能处理程序的一些有用消息,如上一步所示。
- 如以下app.js所示,将所有新创建的路由文件加载到变量中
var createUser = require('./routes/createUser'); var selectUser = require('./routes/selectUser'); var deleteUser = require('./routes/deleteUser'); var updateUser = require('./routes/updateUser');
- 将客户端请求的URL映射到app.js中的路由
app.use('/', routes); app.use('/users', users); app.use('/create', createUser); app.use('/select', selectUser); app.use('/delete', deleteUser); app.use('/update', updateUser);
- 现在该启动Express JS WebApplication来测试我们新创建的路由。
在我们的项目"根目录"中打开命令提示符,然后执行以下命令:
npm start
- 访问URL并观察输出控制台。
访问此URL:https://localhost:3000/create
访问此网址:https://localhost:3000/select
Similarly, we can test all our Express JS Routings.
就是Express JS Routings。
通过使用Enide Studio 2014 IDE默认的" Node:Express JS Project",我们可以更新或者添加需求,并可以实现非常大的实时应用程序。