Google app engine Google应用程序引擎-ImagesService.getServingUrl()无法读取图像
我通过HTTP请求接收图像文件并将其存储在Blobstore中。我的代码与这里的代码大致相同:[https://developers.google.com/appengine/docs/java/blobstore/overview#Writing_Files_to_the_Blobstore][1] 在blobkey上为我存储的图像调用函数ImagesService.getServingUrl()时,我得到以下消息:Google app engine Google应用程序引擎-ImagesService.getServingUrl()无法读取图像,google-app-engine,blobstore,Google App Engine,Blobstore,我通过HTTP请求接收图像文件并将其存储在Blobstore中。我的代码与这里的代码大致相同:[https://developers.google.com/appengine/docs/java/blobstore/overview#Writing_Files_to_the_Blobstore][1] 在blobkey上为我存储的图像调用函数ImagesService.getServingUrl()时,我得到以下消息: HTTP ERROR 500 Problem accessing /up
HTTP ERROR 500
Problem accessing /upload. Reason:
Failed to read image
Caused by:
java.lang.IllegalArgumentException: Failed to read image
at com.google.appengine.api.images.ImagesServiceImpl.getServingUrl(ImagesServiceImpl.java:282)
经过数小时的谷歌搜索,试图找到解决方案,我认为问题在于函数closeFinally()有故障。我认为这是因为在关闭我创建的新blob映像后,与blob关联的FileStats对象对于hasFinalizedName()返回false。然而,对于isClosed()和isFinalized(),blob返回true。此外,其完整路径如下所示:
/blobstore/writable:xFSAF_493dsfAfw489vFa
如果它是关闭的,我认为它不应该是可写的
所以我的问题是:有人能解决getServingUrl不工作的问题吗?有人有解决getServingUrl的方法吗?我希望有图片服务于用户,我希望这些图片作为静态文件存在。带blobstore的getServingUrl似乎是我的最佳选择。我不想使用谷歌云存储,因为在我看到的每一个Blobstore vs Google云存储问题中,Blobstore似乎都赢了。我真是个笨蛋……getServingUrl似乎只在App Engine测试服务器上失败,而不是在部署的应用程序中失败。我的开发环境一定出了问题。。。