使用Enide Studio 2014 IDE进行Express JS路由

时间:2020-02-23 14:41:20  来源:igfitidea点击:

创建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",我们可以更新或者添加需求,并可以实现非常大的实时应用程序。