Google app engine 是否将图像上载到我的应用程序引擎项目中的静态目录?

Google app engine 是否将图像上载到我的应用程序引擎项目中的静态目录?,google-app-engine,Google App Engine,是否可以将图像复制到我的应用程序引擎项目域下的静态目录中 例如,当用户注册我的应用程序时,我希望他们为自己提供一个图像,我会将其复制到一个静态目录,但使用他们的用户名重命名图像,如: www.mysite.com/imgs/username.jpg www.mysite.com/imgs/john.jpg www.mysite.com/imgs/jane.jpg 但我不知道从哪里开始,因为JDOAPI并没有真正处理这类事情,我认为使用JDO,他们希望我将图像数据存储为与我的用户对象关联的blo

是否可以将图像复制到我的应用程序引擎项目域下的静态目录中

例如,当用户注册我的应用程序时,我希望他们为自己提供一个图像,我会将其复制到一个静态目录,但使用他们的用户名重命名图像,如:

www.mysite.com/imgs/username.jpg
www.mysite.com/imgs/john.jpg
www.mysite.com/imgs/jane.jpg
但我不知道从哪里开始,因为JDOAPI并没有真正处理这类事情,我认为使用JDO,他们希望我将图像数据存储为与我的用户对象关联的blob。我可以像这样把图片上传到一个静态目录吗


谢谢

否。App Engine提供了静态文件,但只提供与代码一起上载的静态文件。如果用户可以上传数据,那么它在应用程序引擎上下文中并不是真正静态的。根据您希望用户能够上传的图片的大小,您可能希望使用常规数据存储来存储高达1MB的图片,或者使用更大的数据存储来存储高达2G的图片。没有。App Engine提供了静态文件,但只提供了与代码一起上传的静态文件。如果用户可以上传数据,那么它在应用程序引擎上下文中并不是真正静态的。根据您希望用户能够上传的图片的大小,您可能希望使用常规数据存储来存储高达1MB的图片,或者使用更大的文件来存储高达2G的图片。我几乎可以肯定,您需要使用动态上传。即使您不需要,出于会话独立性的原因,您也可能希望这样做。由于blobstore操作相对于静态文件来说代价高昂,您可以将现在的静态图像移动到静态存储中。

我几乎可以肯定您需要使用动态上载。即使您不需要,出于会话独立性的原因,您也可能希望这样做。由于blobstore操作相对于静态文件来说成本很高,您可以将现在的静态图像移动到静态存储中。

哦,糟糕,好吧,也许我会将用户图像托管在单独的服务器上或其他什么地方,谢谢。我想您是错的。您可以使用普通数据存储或blobstore进行上载。普通数据存储的唯一限制是实体的总大小。另外,您打算如何使用任务队列将文件从blobstore移动到静态文件系统中?你打算如何绕过每个应用程序总共3000个文件的限制?你关于会话独立性的观点是很好的:@Peter,你对3k静态文件的限制是正确的,我想象这些文件可以从blob/datastore转储到开发人员的机器上,然后批量重新上传。但从我现在的阅读来看,3k文件是可变的,但并不是GAE的真正限制,因为它们不喜欢静态文件。如果OP试图在GAE中重新编写flickr,他应该愿意为额外的存储付费,但可能不是。哦,糟糕,好吧,也许我会在一个单独的服务器上托管用户图像或其他东西,谢谢。我认为你错了。您可以使用普通数据存储或blobstore进行上载。普通数据存储的唯一限制是实体的总大小。另外,您打算如何使用任务队列将文件从blobstore移动到静态文件系统中?你打算如何绕过每个应用程序总共3000个文件的限制?你关于会话独立性的观点是很好的:@Peter,你对3k静态文件的限制是正确的,我想象这些文件可以从blob/datastore转储到开发人员的机器上,然后批量重新上传。但从我现在的阅读来看,3k文件是可变的,但并不是GAE的真正限制,因为它们不喜欢静态文件。如果OP试图在GAE中重新编写flickr,他应该愿意为额外的存储付费,但可能不是。谷歌有一个关于在数据存储中存储图像的教程。谷歌有一个关于在数据存储中存储图像的教程。