2

我正在寻找一种将不同子域路由到不同插件的方法。我查看了API 文档,没有发现任何有用的信息。

4

1 回答 1

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"]
});
于 2014-08-15T07:53:04.487 回答