gpt4 book ai didi

javascript - Express-subdomain 不重定向 subdomain.localhost 获取请求

转载 作者:太空宇宙 更新时间:2023-11-04 00:57:59 25 4
gpt4 key购买 nike

我正在使用一个名为 express-subdomain 的express.js 包以方便对我设置的定义子域的请求。

据我了解,子域构造函数需要一个快速路由器对象,我从导出的路由器模块传递给它。

我尝试过的方法如下:

主 APP.JS 服务器文件

var common = {
express: require('express'),
subdomain: require('express-subdomain')

};

common.app = common.express();

module.exports = common;

common.app.listen(3000, function () {
console.log(('app listening on http://localhost:3000'));
});

var router = require('./router/index');


// Error Handling
common.app.use(function(err, req, res, next) {
res.status(err.status || 500);
});

路由器/索引

 module.exports = function (){
var common = require('../app');
var router = common.express.Router();

common.app.get('/', function(req, res) {
res.send('Homepage');
});


common.app.use('/signup', require('./routes/signup'));
common.app.use(common.subdomain('login', require('./routes/login')));
}();

路线/登录

var express = require('express');
var router = express.Router();


router.get('/', function (req, res) {
res.send('login working');
});


router.get('/info', function (req, res) {

});
module.exports = router;

我尝试通过以下网址访问登录子域:

http://login.localhost
http://login.localhost:3000
http://login.localhost.com
http://login.localhost.com:3000

任何澄清或帮助表示赞赏。

最佳答案

这里是express-subdomain的作者👋

有几件事:

  1. 主机必须正确设置 - 我建议您在/etc/hosts 文件中进行类似的设置。


127.0.0.1 myapp.local
127.0.0.1 登录.myapp.local
有关这方面的更多信息,请参阅 https://github.com/bmullan91/express-subdomain#developing-locally

  • 在任何其他路由之前注册子域路由,包括主页路由。顺序很重要

  • 不建议您在 /routes/index.js 中使用的模式(需要自调用函数)。像在 /routes/login.js 中那样导出路由器会更干净。

  • 最后,如果您仍然遇到困难,请查看 Express 子域的源代码,特别是其测试。

    祝你编码愉快。

    关于javascript - Express-subdomain 不重定向 subdomain.localhost 获取请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28755157/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com