PHP谷歌应用引擎从云存储中永久删除图像
我正在使用GAE版本1.9.0,我想从数据存储中删除一个图像,并将另一个图像上载到其位置。我现在就是这样做的PHP谷歌应用引擎从云存储中永久删除图像,php,google-app-engine,google-cloud-storage,Php,Google App Engine,Google Cloud Storage,我正在使用GAE版本1.9.0,我想从数据存储中删除一个图像,并将另一个图像上载到其位置。我现在就是这样做的 unlink("gs://my_storage/images/test.jpg"); move_uploaded_file($_FILES['image']['tmp_name'],'gs://my_storage/images/test.jpg'); 然后我想得到最新上传图像的图像服务URL,我就是这样做的 $image_link = CloudStorageTools::getIm
unlink("gs://my_storage/images/test.jpg");
move_uploaded_file($_FILES['image']['tmp_name'],'gs://my_storage/images/test.jpg');
然后我想得到最新上传图像的图像服务URL,我就是这样做的
$image_link = CloudStorageTools::getImageServingUrl("gs://my_storage/images/test.jpg");
问题是,当删除的图像(“test.jpg”)和上载的图像(“test.jpg”)的名称相同时,当我调用新上载的文件(我认为它是缓存的)时,会提供旧文件
我是否可以永久删除此文件而不缓存它 在创建另一个同名URL之前,您可能应该删除原始的服务URL
CloudStorageTools中有一个deleteMageServingurl()方法,您可以使用它来执行此操作。这里介绍如何在php laravel中执行此操作
$object = $post_media->media_cloud;
$objectname = substr($object,48,100);
$bucket = Storage::disk('gcs')->delete($objectname);
注意:对于多个图像,可以传递一个对象数组,也可以对每个循环重复该数组 我认为这是一个缓存问题。看到这个答案:谢谢你的回复Peter,但是如果缓存被禁用,那将是一个问题,对吗?好像加载图像要花很多时间。是否有办法删除图像和缓存,以便在删除图像之前一直提供缓存?是否清除自己的浏览器缓存?是的。这是我做的第一件事。