Ich habe Brocken wie unten manchmal auf Webseiten beobachtet. Also bin ich neugierig zu wissen, was das wirklich macht? oder warum ist es so geschrieben?
<script src="somefile.js?param1=one¶m2=two" />
Ich kann nur wenige Absichten dahinter erkennen
Aber ich kann nicht herausfinden,
Bitte geben Sie daher einige Eingaben an, die sich auf dasselbe beziehen.
Danke,
In solchen Fällen könnte diese .js-Quelldatei ( richtige Server-Konfigurationen ) haben tatsächlich PHP / .NET Code, der diese angehängten Werte lesen kann.
Außerdem fügen Personen gelegentlich eine zufällige Zeichenfolge am Ende ihrer referenzierten Elemente an, um zu verhindern, dass zwischengespeicherte Daten geladen werden.
Entweder ist die JavaScript-Datei nicht statisch (sie wird vom Server basierend auf den Parametern in ihrer Querystring generiert)
ODER
In der JavaScript-Datei selbst können Sie ihre eigenen Querystring-Parameter überprüfen lassen (nicht nur die der Seite, sondern auch die der JavaScript-Quellen-URL).
ODER
(Dies passt nicht genau zu Ihrem Szenario, aber) Sie können auch Parameter am Ende von Bild- und Skript-URLs als Möglichkeit zur Versionierung hinzufügen. Die Version mit der URL="somescript.js? V = 3" wird vom Benutzer zwischengespeichert, bis sich die Seite dann ändert und die URL nicht="somescript.js? V = 4" lautet. Die Datei wird unabhängig von der Browsereinstellung durch die Version auf dem Server ersetzt.
Meine Annahme (ohne diesen speziellen Fall zu betrachten) ist, dass die Javascript-Datei ihren eigenen Querystring liest. Ich habe das getan, und es ist sehr hilfreich.
Sieht wie Seiten-URL-Parameter aus, aber sind diese Parameter in der JavaScript-Datei sowieso lesbar und haben ein zusätzliches Dienstprogramm?
Ja Sie können sie lesen In JavaScript verwendet Scriptaculous diesen Ansatz zum Laden von Modulen, z. B .:
%Vor%Spielen diese Parameter hier eine zusätzliche Rolle? Was sind die anderen möglichen praktischen Szenarien, in denen Code wie dieser verwendet werden kann / wird?
Dies kann auch für serverseitiges Skript-Verknüpfen und Reduzieren verwendet werden, natürlich unter Verwendung einer URL-Umschreibtechnik, um die .js-Erweiterung zu haben, und wie Sie sagen, ist es eine übliche Technik, Zeitstempelparameter hinzuzufügen, um den Browser-Cache zu unterbrechen.
Ein Beispiel hierfür wäre ein serverseitiger Handler für somefile.js, der die Parameter (Namen anderer Skripte) verwendet, um zu bestimmen, welche Skripte tatsächlich benötigt werden, und sie zu kombinieren / zu minimieren und sie als eine einzige somefile.js zurückzugeben Skriptdatei.
Tags und Links javascript ajax rest scripting web-services