当前位置: 首页 > 面试题库 >

Node.js + Express:路由与控制器

司寇高洁
2023-03-14
问题内容

我是Node.js和Express的新手,我试图理解这两个似乎是重叠的概念,即路由与控制器。

我看过一些简单的例子,app.js + route / *似乎足以路由所需的各种请求。

但是,我也看到有人在谈论使用控制器,并且有些人暗示使用更正式的MVC模型(???)。

如果有人可以帮助我消除这个谜团,并且如果您有一个在Node.js + Express框架中设置控制器的好例子,那就太好了!

谢谢,


问题答案:

Express(以及一般来说,Node)的优点之一是它不会给您带来很多意见。缺点之一是它不会对您产生任何意见。因此,您可以自由(也需要!)自行设置任何此类意见(模式)。

在Express的情况下,您绝对可以使用MVC模式,并且如果需要,路由处理程序当然可以充当控制器的角色-但您必须以这种方式进行设置。可以在Express
examples文件夹中
找到一个很好的示例,名为mvc。如果您查看lib/boot.js,您会看到他们如何设置示例以要求目录中的每个文件controllers,并根据在控制器上创建的方法的名称动态生成Express路由。



 类似资料:
  • 自定义路由 easySwoole支持路由拦截。其路由利用fastRoute实现,因此其路由规则与其保持一致,该组件的详细文档请参考 GitHub文档 路由定义 若需要再easySwoole使用路由拦截功能,请在应用目录(默认为App)下,建立Router类,井继承Core\AbstractInterface\AbstractRouter实现addRouter方法,如果在类UNIX系统下请严格注意文

  • 仅支持 pathInfo 模式的 URL,且与控制器名称(方法)保持一致,控制器搜索规则为优先完整匹配模式。 路由规则 内置路由支持无限层级的路由,即Controller可以无限嵌套目录,如: http://127.0.0.1:9501/api/auth/login 执行的方法为:AppControllerApiAuth::login() http://127.0.0.1:9501/a/b/c/d

  • Routing refers to how an application’s endpoints (URIs) respond to client requests. For an introduction to routing, see Basic routing. You define routing using methods of the Express app object that c

  • 英文原文: http://emberjs.com/guides/routing/setting-up-a-controller/ URL的改变同时也可能改变显示的模板。而模板只有当其搭载了需要呈现的信息才有用。 在Ember.js中,模板从控制器中获取需要呈现的信息。 内置的两个控制器Ember.ObjectController和Ember.ArrayController,使控制器可以非常方便的呈

  • 主要内容:server.js 文件代码:,router.js 文件代码:,server.js 文件代码:,index.js 文件代码:我们要为路由提供请求的 URL 和其他需要的 GET 及 POST 参数,随后路由需要根据这些数据来执行相应的代码。 因此,我们需要查看 HTTP 请求,从中提取出请求的 URL 以及 GET/POST 参数。这一功能应当属于路由还是服务器(甚至作为一个模块自身的功能)确实值得探讨,但这里暂定其为我们的HTTP服务器的功能。 我们需要的所有数据都会包含在 requ

  • 我们要为路由提供请求的 URL 和其他需要的 GET 及 POST 参数,随后路由需要根据这些数据来执行相应的代码。 因此,我们需要查看 HTTP 请求,从中提取出请求的 URL 以及 GET/POST 参数。这一功能应当属于路由还是服务器(甚至作为一个模块自身的功能)确实值得探讨,但这里暂定其为我们的HTTP服务器的功能。 我们需要的所有数据都会包含在 request 对象中,该对象作为 onR