Kann das Google Maps javascript-API werden zwischengespeichert?
Nur neugierig, ob die Google Maps API v3-javascript-Cache auf dem lokalen server?
Weil manchmal meine intranet-Seiten laden langsam, weil der langsamer internet-Verbindung. Ansonsten würde es laden Sie die Datei von der lokalen server und verlangsamen nur, wenn Sie die map-Antrag gestellt wird.
Ich bin sogar bereit, einen cron-job zur Aktualisierung der javascript-Datei einmal in eine Weile.
Vielen Dank für jede Eingabe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist unmöglich, "wie es ist".
Wenn Sie das Skript von Google, die Sie senden Header zusammen das Skript und dieser Header enthält die "no-cache" - Richtlinie.
Also, wenn Sie wollen, dass Sie cachable, müssen Sie ein Proxykonto erstellen. Stattdessen zeigen die script src in Google, zeigen Sie es auf Ihren server. Dein server dann den Aufruf von Google und senden die Antwort zurück an den client.
Diese Weise werden Sie die Kontrolle über den HTTP-header und caching. Sie konnte tun, caching auf der Skript-Inhalte als auch um weniger verbindungen zu Google.
Ich würde nicht empfehlen, jemand, es zu tun auf eine Produktion oder eine unternehmenskritische website. Alle Google-APIs werden Häufig aktualisiert und sind an mehr oder weniger zusammen. Wenn etwas geht synchron mit etwas anderes, Sie haben eine schwer zu verfolgen bug auf Ihre Hände.
Hoffe, das hilft.
EDIT: ich habe gehört, Sie stellen Ihre Skripts in der
HEAD
Abschnitt des Dokuments. Das ist vielleicht der Grund verletzen Ihre "gefühlte" Seitenaufbau-Zeit. Versuchen Sie zu bewegen, das im download des scripts kurz vor der</body>
- tag und die Karte, die Initialisierung in denonload
- Ereignis der Seite.Mike
Ab dem Jahr 2016, die js zurückgegeben, die mit "Cache-Control: public, max-age=1800" - header, so dass es zwischengespeichert wird, für mindestens eine halbe Stunde.
IMHO kann man nicht zwischenzuspeichern. Die API-Skript ruft die Objekte auf dem server von Google. Bei den meisten, können Sie erfassen die Ergebnisse und cache als Bilder (aber dann verlieren Sie die Interaktivität).
Wenn es möglich wäre, die cache-GMap-Ergebnisse, würden die Leute nur cache von Google ist es, die gesamte DB lokal ist und ich nicht glaube, das ist Teil der Nutzungsvereinbarung ;).
Wenn Sie möchten, offline-Karten, die Sie haben zu tun mit nicht-interaktiven Bildern, oder kaufen Sie ein map-server.
<head>
Abschnitt ist das, was unter die gesamte Zeit. Wenn ich könnte, cache geholt .js-Datei, kann ich stattdessen rufen Sie es von der lokalen server. Aber der geocoding-oder map-Anfragen können direkt aus Google. Alle ich bin auf der Suche ist, ob es irgendwelche Auswirkungen auf dies zu tun.Eine option, würde nicht Sie gegen die Google-Nutzungsbedingungen, würde sein, dass ein lokaler cache von OpenStreetMap-Kacheln mit der OpenLayers-script für die Anzeige. Im Grunde, mit dem kostenlosen Daten-erstellen Sie Ihre eigenen map-server.
Wenn es bestimmte Punkte von Interesse, die wichtig sind für Ihr intranet ist, können Sie sicherstellen, dass Sie in OpenStreetMap und setup-rendering-server sich mit nur die features, die Sie benötigen. Nachdem alle, die überlagerung der einzelnen Schule in einem Bezirk über einige png 's geht mehr arbeiten, dann zeigen nur die png' s aus mit den Schulen in Ihnen.
Es würde auch viel weniger Verzögerung auf eine langsame externe Verbindung wenn Sie Ihre map-server bekommt/erzeugt die Fliesen während des Wochenendes statt des Schlagens der Google Map API die ganze Zeit.