Ändern Sie die Cache-Steuerung des Objekts, das Sie in Python in den Cloud-Speicher hochladen.
Es gibt keinen Python-Beispielcode in Offizielle Dokumente, daher werde ich ihn aufschreiben, da es einen Suchtpunkt gab.
upload.py
def main():
_, temp_local_filename = tempfile.mkstemp()
with codecs.open(temp_local_filename, 'w', 'utf_8') as f:
f.write('Text')
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = 'Name der Anmeldeinformationsdatei'
client = storage.Client()
bucket = client.get_bucket('Eimername')
blob = bucket.blob('Name der Zieldatei hochladen')
blob.upload_from_filename(filename=temp_local_filename)
blob.cache_control = 'no-cache'
blob.patch()
return "success"
upload.py
blob.cache_control = 'no-cache'
blob.patch()
Überprüfen Sie, ob es eingestellt ist.
bash
$ curl -v "https://storage.googleapis.com/Eimername/Dateiname" 2>&1 | grep -i Cache-Control
* h2 header: cache-control: no-cache
< cache-control: no-cache
Cache-Control ist jetzt kein Cache.
In Metadaten
Cache-Control entspricht festen Schlüsseldaten. Der folgende Code legt benutzerdefinierte Metadaten fest, sodass die Cache-Steuerung nicht erfolgreich festgelegt wird.
upload.py
blob.metadata['Cache-Control'] = 'no-cache'
Überprüfen Sie, wie es eingestellt ist.
bash
$ curl -v "https://storage.googleapis.com/Eimername/Dateiname" 2>&1 | grep -i Cache-Control
* h2 header: cache-control: public, max-age=3600
* h2 header: x-goog-meta-cache-control: no-cache
< cache-control: public, max-age=3600
< x-goog-meta-cache-control: no-cache
Es wurde auf x-goog-meta-cache-control gesetzt.
Selbst wenn Sie sich die Konsole ansehen, wird der Wert in einem anderen Element als das ursprüngliche Cache-Steuerelement festgelegt.
Recommended Posts