2017-01-19 7 views
0

клиентаangular2 Универсальных для бэкэнда получить имя хост

this._service.get('/api/user').subscribe(user => { 

}) 

сервер

app.use('/api/user', function(req){ 
    console.log(req.hostname) //always get localhost 

}) 

Если мой чек isBrowser не проблемы, может получить имя хост

if(isBrowser) 
{ 
    this._service.get('/api/user').subscribe(user => { 
     this.store.dispatch({ type: SETUSER, payload: user }) 
    }) 
} 

Как сделать в бэкэнде Получить имя хоста

+0

, что вы хотите получить? localhost вместе с номером порта? добавьте ожидаемое значение вместе со значением, которое вы в настоящее время получаете. – Aravind

+0

Я получаю localhost. Я хочу получить домен (* .com) –

ответ

0

Если вы хотите, чтобы получить имя хоста вместе с протоколом и другие детали использовать Tye ниже код

app.use('/api/user', function(req){ 
    console.log(req.hostname) //always get localhost 
    console.log(window.location.protocol + "//" + window.location.host); 
    //output of the above line will be (https://stackoverflow.com) 
}) 
1

починки server.ts

function ngApp(req, res) 
{ 
    res.render('index', 
    { 
     req, 
     res, 
     preboot: false, 
     baseUrl: '/', 
     hostname: req.hostname, 
     requestUrl: req.originalUrl, 
     originUrl: `http://${req.hostname}:${ app.get('port') }` 
    }) 
}