我正在寻找一种方法将不同的子域路由到不同的插件。我浏览了API docs,但没有找到任何帮助。
答案 0 :(得分:1)
我最终创建了一个简单的类来创建仅适用于某些子域的插件。在这里。
var Plugin = function(attributes, routes) {
// Add our routes to the server
this.register = function(plugin, options, next) {
// Loop through the selected servers and add the routes
plugin.servers.forEach(function(server) {
// Loop through the routes and add the vhost option
routes.map(function(route) {
route.vhost = attributes.vhosts.map(function(vhost) {
return vhost + "." + server.info.host;
});
});
// Add the routes
server.route(routes);
});
next();
};
// Add our attributes
this.register.attributes = attributes;
};
然后,您可以制作新插件并轻松指定子域。例如:
var plugin = new Plugin([
// Your route or routes here
], {
vhosts: ["array", "of", "subdomains"]
});