Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to handle tenant subdomains in Angular 2 (router 3)

Trying to get tenant.app.com setup in Angular 2 (RC6, Router 3.0)

Is there any documentation around how to do this? Almost everything I've seen starts with a base url = / and then parses the url from the base url.

I need to have a www version for the non-signedin user and then tenant driven subdomains for all loggedin users

like image 277
Vijay Avatar asked Sep 10 '16 22:09

Vijay


1 Answers

I think I have an approach that's working. getSubdomain() allows me to query the subdomain in app.component.ts on NgInit() and I can use that to scope the sign in for the user against a tenant_id tied to the subdomain

getSubdomain() {
  const domain = window.location.hostname;
  if (domain.indexOf('.') < 0 || 
    domain.split('.')[0] === 'example' || domain.split('.')[0] === 'lvh' || domain.split('.')[0] === 'www') {
    this.subdomain = '';
  } else {
    this.subdomain = domain.split('.')[0];
  }
  console.log('subdomain', this.subdomain);
}
like image 90
Vijay Avatar answered Oct 15 '22 02:10

Vijay