2017-11-14 3 views
0

Ich brauche meinen Server, um params zu erhalten, um etwas besser für soziale Plattformen wie Facebook zu teilen.Wie man Parameter vor dem Hash in Ionic 3 hinzufügt

Also zum Beispiel, wenn ein Benutzer auf eine Seite bei mysite.com für Element 1001 geht, möchte ich, dass es einen Parameter vor der # mysite.com?item=1001/#/ vorlegt.

Das ist so, dass, wenn ein Benutzer diese URL kopiert und teilt, die Anfrage des Facebook-Bot für die Seite ?item=1001 in seiner Anfrage enthält, damit ich die Seite auf unseren Server umleiten kann, um die Meta-Seite mit den relevanten Informationen zu bedienen.

Alle Informationen nach der # wird nicht an den Server gesendet, weil der Browser versteht, dass es nur für den Client zu verwenden ist.

Ist es in Ionic möglich, Abfrageparameter der URL während der normalen ionischen Seitennavigation vorzugeben?mysite.com?item=1001/#/

+0

Ist dies [SO Link] (https://StackOverflow.com/Questions/8653183/facebook -share-showing-masked-fragment-url-statt-von-hash-version? rq = 1) beantwortet Ihre Frage? – Antikhippe

+0

Nein, am Ende habe ich direkt auf das Fenster zugegriffen, anstatt die ionischen Routing-Bibliotheken zu verwenden – user3331142

Antwort

1

Ich endete einfach mit window, um dies zu tun, anstatt die ionischen Routing-Bibliotheken zu verwenden.

window.history.replaceState( 
    {} , 
    "Title", 
    `${window.location.origin}?item=${this.item_id}/${window.location.hash}` 
); 

der die URL zu mysite.com?item=1001/#/nav/n4/other_stuff wie gewünscht ändert. Dieser Link kann dann kopiert und geteilt werden und das Backend wird sich des Inhaltes bewusst, den es erzeugen muss, wenn es ein Bot ist.

Verwandte Themen