在同一个Meteor网站的多个版本之间共享相同的代码

时间:2016-11-04 22:19:17

标签: apache mod-rewrite meteor iron-router

我使用与Apache集成的Phusion Passenger部署了Meteor Web。用户使用http://mycompany.org:3001访问它。

Meteor网络通过REST API与另一台外部服务器进行通信。 该外部服务器具有相同REST API的3个版本:

上述REST API的每个版本管理不同的用户数据库,即user_DB_1 - > v1,user_DB_2 - > v2,user_DB_3 - > V3。

目前,我部署的Meteor网络正在调用该REST API的v1(http://external_server/v1/restapi)。

现在,我必须使用相同的Meteor网络调用其他版本的REST API(v2和v3),如下所示:

是否可以捕获该URL的版本并将其作为参数传递给Meteor网站,以便它调用相应的API? 例如,如果用户向http://mycompany.org/meteor_web_v1/login发出HTTP请求,则网络会调用http://external_server/v1/restapi,依此类推......

这是什么方法?使用Apache mod_rewrite,Iron Router或哪个解决方案?

1 个答案:

答案 0 :(得分:1)

您可以使用流路由器或铁路由器将url部分作为参数,在路由声明中将其命名为: '/:myroute'

然后您将获得一个路由参数作为变量,您可以在代码中使用该参数传递给您的服务器方法来执行http请求。

你正在从服务器做http请求,对吗?这样做可以防止任何CORS问题,并将等待卸载到服务器。然后,服务器应该根据收到的数据更新数据库,客户端将自动刷新以使结果可用。