Iron Router中的路由是在客户端还是服务器上运行

时间:2014-09-17 15:46:16

标签: meteor iron-router

我一直在使用Iron Router,并且一直认为路由在服务器上运行。但最近我正在阅读Accounts-Entry代码并注意到,虽然路由是在“共享”中定义的,但用于检测用户是否已登录的方法仅存在于“客户端”下。

这引导我思考路线实际运行的位置。它们是在客户端,服务器上运行吗?那么“服务器”路线呢?

1 个答案:

答案 0 :(得分:1)

查看文档的Server Side Routing部分。

  

在服务器和客户端上定义路由和配置路由器几乎完全相同。缺省情况下,路由创建为客户端路由。您可以通过为路由提供where属性来指定路由是否适用于服务器...

因此,通过向路由添加where: 'server',您可以在服务器上运行它。在共享目录中定义路由的优点是服务器可以使用Router对象来确定客户端上的路径(对于生成电子邮件等内容非常有用)。