[PYTHON] Informationen zum HTTP-Cache bei der Entwicklung einer REST-API-basierten Webanwendung [mit GCP]

Überblick

Ich entwickle die Serverseite mit Cloud Run in Python (Flask) und die Clientseite mit Firebase in Javascript (Vue.js). Python liest und schreibt hauptsächlich Firestore-Daten. Zu diesem Zeitpunkt sind die folgenden zwei Probleme aufgetreten.

  1. Ich mache eine GET-Anfrage, aber ich mache eine OPTIONS-Anfrage (überprüfen Sie mit dem Browser)

Dieser Artikel beschreibt diese Ursachen und Gegenmaßnahmen.

"Über 1

Für 1 wird die OPTIONS-Anforderung als Preflight-Anforderung bezeichnet, und wenn es sich nicht um eine einfache Anforderung handelt, scheint es sich um eine CORS-Anforderung zu handeln, um zu überprüfen, ob das CORS-Protokoll verstanden wird. Dies kann durch Überprüfen der Anforderungseinstellungen auf der Clientseite behoben werden (im Fall der REST-API kann ein Authentifizierungsheader vorhanden sein, der in vielen Fällen übersprungen werden kann). Informationen zur Anfrage vor dem Flug finden Sie auf der folgenden Website. Immerhin war das kein Problem, also das war's.

Ungefähr 2."

Dies liegt am HTTP-Cache. ** Als die Antwort auf der Serverseite generiert wurde, lag es daran, dass ich den "Cache-Control-Header" für den HTTP-Cache nicht festgelegt habe **. Infolgedessen wurde die Anforderung ursprünglich nicht an die Cloud-Ausführungsseite gesendet, und der HTTP-Cache in Firebase wurde auf die Clientseite beantwortet. Es gibt kein Problem mit der ersten GET-Kommunikation nach der Bereitstellung, aber selbst wenn Sie den Inhalt von Firestore danach ändern, ist die zweite und nachfolgende GET-Kommunikation mit dem ersten Inhalt identisch.

--HTTP-Cache: [https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-caching?hl=ja](https://developers.google.com/web/fundamentals/ Leistung / Optimierung der Inhaltseffizienz / http-Caching? hl = ja) --HTTP-Cache (MDN-Webdokumente): https://developer.mozilla.org/ja/docs/Web/HTTP/Caching

abschließend

Vielleicht, weil es zu allgemein bekannt ist, dass es Webshops gibt, gab es nicht viele solche Artikel, deshalb habe ich es als Memorandum geschrieben.

Recommended Posts

Informationen zum HTTP-Cache bei der Entwicklung einer REST-API-basierten Webanwendung [mit GCP]
Webanwendung mit Flasche (1)
WEB-Anwendungsentwicklung mit Django-Entwicklung Teil 1-
Gegenmaßnahmen gegen Proxy bei Verwendung der WEB-API
Erstellen einer Webanwendung mit Flask ②
Entwicklung einer WEB-Anwendung mit Django [Anwendungszusatz]
Erstellen einer Webanwendung mit Flask ①
Erstellen einer Webanwendung mit Flask ③
Erstellen einer Webanwendung mit Flask ④