重定向GET请求并包含身份验证令牌

时间:2012-02-22 08:41:48

标签: google-app-engine google-cloud-storage

GAE = Google App Engine GCS = Google云端存储

我的GAE应用程序收到实际存储在GCS存储桶中的文件的GET请求。我想将这些请求重定向到他们的真实位置,并在重定向的请求中包含一个身份验证令牌,以便GCS接受为他们提供服务。

要发出重定向,GAE会公开webapp2.RequestHandler.redirect,这不允许我在原始请求中添加任何标头。

是否可以重定向GET请求并在其中包含身份验证令牌?

3 个答案:

答案 0 :(得分:2)

HTTP重定向只是具有3XX状态代码的响应。您无法将标头或响应正文转发到新位置。

那就是说,你需要在客户端上实现一些逻辑。您的客户必须向您的GAE应用程序发出一个请求,然后处理响应,然后再向GCS发出一个请求,其中包含您要提供的所有标题或正文(在您的情况下为身份验证令牌)。

答案 1 :(得分:1)

我也用这个更新了另一个帖子,但万一你没看到它。

在即将发布的AppEngine 1.6.4版本中,我们添加了将Google存储对象名称传递给blobstore.send_blob()以从AppEngine应用程序发送任意大小的Google存储文件的功能。我们为您的应用程序创建了正确的令牌,以访问Google存储桶中的对象。

Here是1.6.4的预发布公告。

答案 2 :(得分:0)