2016-05-17 4 views
1

Wie kann ich vorherige URL ohne Magie und im Backend bekommen?Sails.js - vorherige URL aus Anfrage erhalten

Jetzt ich es durch eine Politik erhalten:

module.exports = function(req, res, next) { 
    if (!req.session.previouseUrls) { 
    req.session.previouseUrls = []; 
    } 
    req.session.previouseUrl = req.session.currentUrl || "/"; 
    req.session.currentUrl = req.url; 
    req.session.previouseUrls.push(req.session.previouseUrl); 

    next(); 
}; 

aber es ist unbequem. Kann ich die vorherige URL vom Backend einfacher erhalten?

+2

Vorherige URL? Ist es die URL, die der Kunde vor der aktuellen trifft? Warum musst du es bekommen? – Haven

Antwort

-1

Wenn Sie die Geschichte (oder nur vorherige Seite) der Seitenanforderungen des Benutzers rein auf der Client-Seite wissen müssen, könnten Sie natürlich HTML5 History abfragen?

..oder wenn Sie ältere Browser unterstützen müssen, vielleicht History.js?

würde ich mit betroffenen, wie Sie es jetzt aus 2 Gründen tun:

  • Es Ihre Session-Speicher füllen beginnen los ist. Dies ist möglicherweise kein großes Problem, wenn Sie kurze Sitzungen oder nicht viele Benutzer haben.
  • Es konnte nicht nur traditionelle Seitenansichten "Klicks", sondern jede Anfrage aufzeichnen. Wenn Sie nicht sehr vorsichtig sind, diese Richtlinie zu definieren, fügen Sie möglicherweise einen Ajax-Aufruf hinzu, der diese Richtlinienüberprüfung durchläuft, und Sie haben das wahrscheinlich nicht beabsichtigt.
+0

Ich frage nur nach dem Backend. Und ja, ich verstehe voll und ganz, dass jeder AJAX die Politik von "nach" durchbrechen kann. Deshalb habe ich Hilfe für die BACKend-Lösung –

+0

bekommen. Ich habe deine Frage so verstanden, dass sie "ohne Magie im Backend" bedeutet und nicht "ohne Magie, im Backend". – mwielbut

+0

Entschuldigung dafür. ändere diesen Teil in "ohne Magie und im Backend" –