使用包含access_token的Uri从Google文档下载

时间:2012-05-14 14:44:45

标签: oauth-2.0 google-docs-api google-drive-api

我正在为Windows Phone 7创建一个查看器应用。该应用已经处理了OAuth2的内容并成功浏览了Google Doc的文件夹结构。

我使用Google Documents List API 3。 BTW浏览完美无需使用请求标头,而是将access_token附加到请求Uri。

现在应用程序需要向用户显示文件,如果可能的话,不先下载它们。这意味着我想将UI的Image.Source设置为图像的Uri,将UI的MediaElement.Source设置为视频的Uri,将BackgroundAudioPlayer.Track.Source设置为音频文件的Uri。显然,在这种情况下我无法使用请求标头。

然而,似乎只是将access_token附加到下载Uri不起作用。 UI元素因一般错误消息而失败,如果我手动尝试使用网络浏览器(未登录Google),则会显示空白屏幕,401错误或重定向到Google的登录页面。

是否可以通过定义Uri来下载/流式传输Google数据条目?如果是的话,Uri需要看起来像什么?

1 个答案:

答案 0 :(得分:2)

出于安全原因,不允许使用access_token URL参数进行授权支持。基本上,如果用户要在浏览器上打开恶意文件(例如包含一些Javascript的html就足够了),文件上的恶意代码可能会窃取URL中的访问令牌并将其发送给第三方坏人。

要访问您需要使用“授权”HTTP标头进行授权的文件。只需在请求中添加一个HTTP标头,如:

Authorization: Bearer access_token_here