start_url
Das start_url
-Manifestmitglied wird verwendet, um die URL zu spezifizieren, die geöffnet werden sollte, wenn ein Benutzer Ihre Webanwendung startet, zum Beispiel durch Tippen auf das Anwendungssymbol auf dem Startbildschirm des Geräts oder in einer Anwendungsübersicht.
Hinweis:
Das start_url
ist ein Hinweis für Browser. Browser haben Flexibilität in der Handhabung von start_url
und könnten nicht immer den angegebenen Wert verwenden.
Syntax
/* Absolute URLs */
"start_url": "https://example.com/myapp"
"start_url": "https://myapp.com/home"
/* Relative URLs */
"start_url": "/"
"start_url": "../index.html"
Werte
start_url
-
Ein String, der die Start-URL einer Web-App repräsentiert. Die URL kann absolut oder relativ sein. Wenn der Wert relativ ist, wird er gegen die URL der Manifestdatei aufgelöst.
Wenn
start_url
nicht angegeben ist oder der Wert ungültig ist (d.h. kein String, keine gültige URL oder nicht same-origin wie die Seite, die auf das Manifest verweist), wird die URL der Seite verwendet, die auf das Manifest verweist.Hinweis: Wenn
scope
im Manifest nicht angegeben ist, wird es aus demstart_url
(oder effektivemstart_url
, wenn der Wert undefiniert oder ungültig ist) abgeleitet.
Beschreibung
Das start_url
erlaubt es Ihnen, einen geeigneten gemeinsamen Einstiegspunkt für alle Benutzer zu empfehlen.
Wenn ein Benutzer eine Web-App installiert, erfolgt die Installation von der Seite aus, die er gerade ansieht. Während der Installation ruft der Browser die Manifestdatei ab, die von dieser Seite verlinkt ist. Obwohl die Manifestdatei von jedem Ursprung bereitgestellt werden kann, ist der Installationsprozess an die Seite gebunden, auf der er beginnt. Betrachten Sie folgendes Szenario:
- Die Installationsseite ist
https://myapp.example.com/index.html
. - Die Manifestdatei wird unter
https://assets.cdn.com/manifest.json
gehostet. - Das
start_url
isthttps://myapp.example.com/home
.
Das in diesem Beispiel angegebene start_url
wird verwendet, weil es im gleichen Ursprung liegt wie die Seite, von der die App installiert wird.
Wenn das angegebene start_url
einem anderen Ursprung angehören würde (zum Beispiel https://differentapp.example.com/home
), würden Browser auf die Installationsseiten-URL als Startpunkt zurückgreifen.
Dies stellt sicher, dass Web-Apps nur auf Seiten innerhalb ihres eigenen Ursprungs starten.
Beachten Sie jedoch, dass Browser nicht verpflichtet sind, die angegebene URL zu verwenden.
Sie können den angegebenen Wert ignorieren oder den Benutzern die Wahl lassen, ihn nicht zu verwenden.
Sie können Benutzern auch erlauben, die URL beim Erstellen eines Lesezeichens für die Web-App oder zu einem späteren Zeitpunkt zu ändern.
Berücksichtigen Sie dies bei der Gestaltung Ihrer App, um Variationen im start_url
zu ermöglichen.
Beste Praktiken
Diese URL sollte Benutzer zu einer wichtigen Seite Ihrer App führen, wie einem Dashboard.
Berücksichtigen Sie Funktionen, auf die Benutzer unmittelbar nach dem Start der App zugreifen möchten.
Wenn die Hauptseite Ihrer App im Root Ihrer Seite liegt, können Sie das start_url
auf /
setzen.
Sie können auch einen tiefen Link angeben (z.B. https://myapp.com/product/whatsnew
), um Benutzer zu speziellen Inhalten innerhalb Ihrer App zu leiten.
Vermeiden Sie es, eine generische Startseite anzugeben.
Aus Sicherheitsgründen muss das start_url
im gleichen Ursprung wie die Manifest-URL sein.
Wenn ein nicht gleich-originiges start_url
angegeben wird, greifen Browser auf die Seite zurück, die das Manifest verlinkt, als Standardstartseite zurück.
Datenschutzüberlegungen
-
Fingerprinting:
Das Kodieren von Strings in
start_url
, um Benutzer eindeutig zu identifizieren (z.B. serverseitig zugewiesene Bezeichner, wie?user=123
,/user/123/
, oderhttps://user123.foo.bar
) erzeugt einen dauerhaften Fingerabdruck. Benutzer sind sich möglicherweise nicht bewusst, dass ihre datenschutzsensiblen Informationen auch nach dem Löschen von Standortdaten bestehen bleiben können. Es ist schlechte Praxis, jegliche Informationen instart_url
einzubeziehen, die Benutzer eindeutig identifizieren könnten.Browser können Schutz gegen diese Art des Fingerprintings bieten. Wenn Benutzer beispielsweise Daten von einem Ursprung löschen, können Browser sie dazu auffordern, Apps zu deinstallieren, die innerhalb des Bereichs dieses Ursprungs liegen. Dies entfernt jegliche potenziellen Fingerabdrücke aus dem
start_url
der App. -
Startverfolgung:
Das Hinzufügen von Parametern zu einem
start_url
, um anzugeben, dass die App außerhalb des Browsers gestartet wurde (z.B."start_url": "index.html?launcher=homescreen"
) kann für die Analyse und Anpassungen nützlich sein. Diese Informationen könnten jedoch Teil des digitalen Fingerabdrucks eines Benutzers werden. Berücksichtigen Sie die möglichen Datenschutzimplikationen bei der Implementierung solcher Tracking-Mechanismen.
Beispiele
Festlegung einer absoluten Start-URL
Angenommen, die Manifestdatei für Ihre Wander-Web-App befindet sich unter https://hiking-pro.com/resources/manifest.json
, und https://hiking-pro.com/index.html
verlinkt die Manifestdatei.
Sie möchten, dass Benutzer auf der Seite trail-hub.html
landen, wenn sie die App starten.
Sie können diese Start-URL in Ihrer Manifestdatei wie folgt spezifizieren:
"start_url": "https://hiking-pro.com/trail-hub.html"
Dieser start_url
-Wert ist gültig, da er denselben Ursprung wie die Manifest-URL (https://hiking-pro.com/resources/manifest.json
) hat.
Der folgende start_url
ist ungültig, da er nicht den gleichen Ursprung wie die Manifest-URL hat:
"start_url": "https://other-domain.com/trail-hub.html"
In diesem Fall wird https://hiking-pro.com/index.html
als Standardstartseite verwendet, wenn Benutzer die App starten.
Festlegung einer relativen Start-URL
Für Ihre Wander-App im vorherigen Szenario können Sie denselben Startpunkt mit einer relativen URL angeben, wie unten gezeigt.
Diese relative URL wird zu https://hiking-pro.com/trail-hub.html
aufgelöst, indem die URL der Manifestdatei (https://hiking-pro.com/resources/manifest.json
) als Basis verwendet wird.
"start_url": "../trail-hub.html"
Spezifikationen
Specification |
---|
Web Application Manifest # start_url-member |
Browser-Kompatibilität
Siehe auch
- Anwendungskontext
- Same-origin policy
- Das Web-App-Manifest, um Ihre Web-App installierbar zu machen
- Sicherheit im Web