我正在使用Python Google App Engine开发一个应用程序,我正在使用BlobStore来存储图像数据。
我已将所有数据库信息备份到本地主机以设置本地开发环境但我想使用生产服务器中的Blobs映像(因此我不必将所有文件复制到本地计算机)。
当我调用images.get_serving_url()来获取图像url时,它返回一个不存在的本地引用(因为所有图像都在prod服务器中)。
有没有办法配置图像类指向我的prod服务器? 如果答案是否定的,我如何将来自我的开发服务器的调用重命名为/ _ah / img /到我的prod服务器?
from google.appengine.api import images
print images.get_serving_url(page, size=100)
>> http://0.0.0.0:8080/_ah/img/AMIfv96IySWiIWF-4FRipavsn9xXnkk-EhmNOU0qWZ4y0ORIXj0Ct85C9eXMBdv3JVooWPIm6-2D3U9ffuTtpJEkWh13ZzmmaNKSiu5QMsnk0exNWj7g1OWbpNxcsjtmv52wz94QFQ6xCNz-atycTqfkdDHbX-LWmMqlsrVEs86S4wsAKSNOZZE=s100
我希望这次调用的输出是我的prod服务器url。
你问的是不可能的。
图像blob键或多或少地随机生成。 即,当您将Blob上载到生产Blobstore时,它会生成一个密钥。
dev appserver无法知道生产服务器上给定映像的密钥。 如果您将相同的图像“上传”到dev_appserver,它将获得完全不同的密钥。
您可以选择在本地下载所有图像并将其“上传”到本地开发服务器。 如果您使用的是Google云端存储,gsutil工具可能会有所帮助: https : //developers.google.com/storage/docs/gsutil
或者在服务器上找到所有blobstore URL并在您自己的应用程序中手动映射它们。