2017-04-26 1 views
4

Gibt es eine Möglichkeit, alle src="" URLs beim Rendern einer ASP.net MVC-Seite in der Ansicht zu finden, um DNS-Prefetch-Tags im laufenden Betrieb zu generieren?ASP.Net MVC Generieren DNS Prefetch Tags

https://www.chromium.org/developers/design-documents/dns-prefetching

+0

Was wurde bisher versucht? Wo ist das Problem, wenn überhaupt? Stellen Sie ein [mcve] zur Verfügung, mit dem das Problem neu erstellt und geklärt werden kann und damit die Formulierung einer Lösung erleichtert wird. – Nkosi

Antwort

4

Wenn ich das richtig verstanden kann ich Ihnen sagen folgendes:

Option # 1: (. Nicht eine hübsche Lösung, aber funktionieren würde)

Hinweis: für diese versuchen, Verwenden Sie einfach Javascript und verlassen Sie sich nicht auf JQuery oder andere (seit dann müssen Sie immer noch die .JS-Datei für diese "laden" und das ist der Punkt der Frage ruinieren.

Verarbeiten Sie Ihre src/href oder ein anderes vordefiniertes Property-Tag mit einer Art "OwnLogic" zur Definition des "Basisziels", , aber in einer Weise, dass der Browser nicht in der Lage wäre, die Anforderung zum Erhalten dieses Bildes oder einer anderen Datei zu initiieren. Beispiel:

<img url="" class="DNS_BaseTarget" DNS_BaseTarget="smiley.gif||myCDNPointerInfo" alt=""> 

mit Javascript Dann bekommen, eine Liste aller Elemente, die die Klasse DNS_BaseTarget verwendet und dann den Eigenschaftswert lesen und den „src“ Tag aktualisieren. Gleichzeitig können Sie durch Javascript injizieren alle "<link rel="dns-prefetch" href="https://cdn.yourTargetDomain.com">", die Sie basierend auf den Informationen, die Sie gerade verarbeitet haben, verwenden.

Ich habe dieses Konzept nicht getestet, so "Verzögerung" oder eine Art Verzögerung im Client könnte erwartet werden (aber vielleicht nicht vom Benutzer bemerkbar).

Option # 2:

Die Ansicht Ergebnis Execution-Prozess (in MVC-Lebenszyklus) sagen uns, dass die Methode 'Render()' ist der letzte ausgeführt werden. Mit diesem gesagt, können Sie Ihre eigene benutzerdefinierte überschreiben Logik erstellen Beispiel: abfangen Ansicht Rendering HTML/JS in allen Teilansichten hinzuzufügen? How to intercept view rendering to add HTML/JS on all partial views?

Mit diesem Konzept zu versuchen, die endgültige HTML, bevor sie an den Benutzer zu senden „verarbeiten“, könnte man irgendwie die Datei „analysieren“ .... versuchen alle ‚src/href‘ zu bekommen und dann injiziere alle '<link rel="dns-prefetch" href="https://cdn.yourTargetDomain.com">', die du benutzen wirst.

+0

Option 2 scheint die Art von Sache zu sein, die ich brauche. Danke, werde bald einen schnellen Prototyp machen und zurück zu dir kommen. –

+0

@ThomasOwers Wie hat es für dich geklappt ??? – Dryadwoods

+0

Es hat funktioniert, danke. –

Verwandte Themen