Comments (9)
OK i managed to do it !
I can make a Pull request if needed (but I think this is too specific).
To sum up how I did, I created a custom OriginService for server (for browser I just set origin to window.location.origin).
import { Injectable, Inject } from '@angular/core';
import { Request } from 'express';
import { REQUEST } from '@nguniversal/express-engine/tokens';
@Injectable()
export class OriginService {
public origin: string;
constructor(@Inject(REQUEST) private request: Request) {
this.origin = request.hostname;
}
}
from universal.
Currently not, but I'll have a look at this probably in the weekend.
from universal.
@theomathieubhvr, I am not totally aware of your specific case, but can't (and shouldn't?) the router handle that?
from universal.
@Gbuomprisco I'm trying to get the domain of the website I visit.
I tried to do this
console.warn((router as any).location._platformStrategy._platformLocation.location);
with no luck server-side.
from universal.
Well, I can suggest you a simple workaround to retrieve that value using ngx-meta.
There's the applicationUrl
parameter in config.json
, which is passed to MetaStaticLoader
on app.module. This value is rendered on the page as the og:url
(<meta property="og:url" content="http://yourwebsite.com/current_route">
).
You can always access the contents of og:url
meta tag through the DOM, and then split the value using the slashes.
from universal.
Ok sorry but I checked and appplicationUrl parameter is very much static.
Maybe I haven't been clear, I will try to reexplain.
Assuming I have a news website with two categories, Politics and Economics. I want to offer http://politics.website.com and http://economics.website.com as urls that my user can go to.
These with ONE repository, yours. I want to know which user is on which website.
Is there any way to do this ?
Thanks :)
from universal.
@theomathieubhvr I tried you method and I am able to get origin url but its giving an error on browser:
Uncaught TypeError: Cannot read property 'prototype' of undefined
at Object.<anonymous> (request.js:31)
var req = Object.create(http.IncomingMessage.prototype)
from universal.
Have you created a OriginService for the browser too ?
from universal.
Any way to achieve this (get the express request object) with @ngx-universal/express-engine please ?
from universal.
Related Issues (20)
- way to access the meta title HOT 1
- unreachable endpoint HOT 3
- why should we need `electron` in this project HOT 1
- html tags including webpack javascript syntax
- How to disable all the Junits.?
- func expressions not supported in decorators in reducers in aot HOT 1
- no setting found with the specified key HOT 3
- assets path HOT 1
- EEXIST: file already exists | @ngx-cache HOT 5
- how to set facebook og tags HOT 1
- Show html css in between route-app tag HOT 1
- Any ideas to integrate socket.io?
- Migrate LGTM.com installation from OAuth to GitHub App
- Build command project name typo HOT 1
- use sitemap-generator for SSR
- Angular 4 universal ReferenceError: document is not defined HOT 1
- getting issue on yarn start:ssr HOT 2
- Error: You must pass in a NgModule or NgModuleFactory to be bootstrapped
- error Type 'Request' is not generic
- Why do I see network requests at in Chrome broswer?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from universal.