Google app engine 如何通过将图像上载到blobstore来扩展数据存储示例

Google app engine 如何通过将图像上载到blobstore来扩展数据存储示例,google-app-engine,go,google-cloud-datastore,blobstore,Google App Engine,Go,Google Cloud Datastore,Blobstore,我花了几天时间研究这个问题,我认为这是一个足够普遍的问题,可以在这里提出,这样对其他初学者会有好处。 我对如何解决这个问题几乎没有什么想法,希望得到更有经验的人的指导 中的示例代码 创建模板并在按下提交按钮时重定向到“/签名”。在“/sign”处,表单值被加载到数据存储中,客户端被重定向到“/” 中的示例代码 创建一个模板,据我所知,当按下submit按钮时,表单值将加载到blobstore中,客户端将重定向到“/upload” 根据我的理解,在blobstore中,写入是在重定向到“/uplo

我花了几天时间研究这个问题,我认为这是一个足够普遍的问题,可以在这里提出,这样对其他初学者会有好处。 我对如何解决这个问题几乎没有什么想法,希望得到更有经验的人的指导

中的示例代码 创建模板并在按下提交按钮时重定向到“/签名”。在“/sign”处,表单值被加载到数据存储中,客户端被重定向到“/”

中的示例代码 创建一个模板,据我所知,当按下submit按钮时,表单值将加载到blobstore中,客户端将重定向到“/upload”

根据我的理解,在blobstore中,写入是在重定向到“/upload”之前,而在数据存储中,写入是在重定向到“/sign”之后

所以问题是,在按submit时,如何将图像写入blobstore和将图像信息写入数据存储区分开

我想到的最简单的解决方案是使用blobstore方法“提交”,将所有内容写入blobstore,然后使用r.FromValue(“info”)获取数据并将其放入数据存储。 缺点是我在数据存储和blobstore中都有重复的“info”

另一种解决方案是使用datastore方法“提交”表单,然后手动将图像放入blobstore。我发现这样做的方法可能不是最优的,就是将映像转换为[]字节()即us blobstore.Create和writer.write([]字节) 此方法的缺点是图像可能太大,无法重定向到“/符号”。这个评论是我缺乏经验的直觉,我可能是错的


我非常感谢您的帮助

我通过AirPair从@LouFranco获得了一些帮助,我允许将解决方案公开。我需要从iPhone应用程序中通过Google端点将图像上传到Blobstore。它需要几个端点调用。我相信,首先获得一个blobstore密钥,然后iPhone的Objective-C代码进行多次调用,以使用一个称为multi-part的协议将数据分块发布。我不确定它是否与你相关,但如果相关,我可以发布更多细节。