【发布时间】:2009-06-25 18:32:20
【问题描述】:
我在 Google App Engine 上有一个应用程序,可以接受用户上传的图片。我设想的问题是用户将直接从他们的相机上传这些图像,并且文件大小通常大于 1MB,这是图像 API 的限制(将用于调整图像大小)。
接受上传 1.5MB 图像文件并将其大小调整到 1MB 以下的最佳方式是什么?
【问题讨论】:
标签: image api google-app-engine image-processing resize
我在 Google App Engine 上有一个应用程序,可以接受用户上传的图片。我设想的问题是用户将直接从他们的相机上传这些图像,并且文件大小通常大于 1MB,这是图像 API 的限制(将用于调整图像大小)。
接受上传 1.5MB 图像文件并将其大小调整到 1MB 以下的最佳方式是什么?
【问题讨论】:
标签: image api google-app-engine image-processing resize
虽然这在 App Engine 文档中并不清楚,但可以通过结合使用 Blobstore 和图像处理服务来实现。
你必须:
我已经写了一篇关于这个的帖子 -> http://socialappdev.com/uploading-and-re-sizing-large-images-on-app-engine-11-2010.
【讨论】:
这里有两种(类似的)方法可以解决这个问题:
POSTs 将它返回到您的应用程序。当然,所有这些交互都需要某种授权,以免被滥用。或者,POST 将图像直接发送到您的外部服务器,但是您必须将其他表单数据发送回您的应用程序,或者使用单独的表单进行图像上传。POST 数据。我推荐第 2 点,因为它不需要您绕过 Google App Engine 的限制,而且由于您的用户直接从相机上传图像,他们可能无论如何都想对它们做一些事情(例如裁剪。)
【讨论】:
这是一个难题。使用google.appengine.api.images.resize 的“明显”答案将不起作用,因为它太大了。 :) 所以你将不得不使用第三方软件,无论是在服务器上(由于 App Engine 的限制,这将是棘手的)或 cilent(例如 Java 上传器)。
【讨论】: