403禁止使用简单的Android Picasa相册列表请求

时间:2011-11-09 03:05:55

标签: android picasa

我很难从Android访问Picasa。经过几个小时的研究,我终于确定Google API Java Client库是我应该使用的。几个小时后,我认为我必须使用Mercurial和Maven来下载和构建sample client,以便我可以获得download instructions中未包含的某些秘密库。当然,示例客户端与Picasa Developer's Guide中的示例客户端完全不兼容,只是略有类似。

因此,经过多次麻烦,我创建了一个简单的URL并尝试使用示例客户端中的代码列出用户的相册:

PicasaUrl url = PicasaUrl.relativeToRoot("feed/api/user/someuser");
UserFeed userFeed = client.executeGetUserFeed(url);

现在创建的实际网址如下:

https://picasaweb.google.com/data/feed/api/user/someuser?prettyprint=true

如果我把它放在我的浏览器中,它可以正常工作。但是,在我的Android客户端中,它给出了一个HTTP 403禁止错误。不,我甚至无法运行示例客户端,因为它没有给我一个APK文件。 (另外,源代码没有记录,像spaghetti一样编写,并使用弃用的方法。)

打开协议级别日志记录后,发现这是发送的HTTP请求:

GET https://picasaweb.google.com/data/feed/api/user/someuser?fields=author/name,entry(@gd:etag,category(@scheme,@term),gphoto:access,gphoto:numphotos,link(@href,@rel),summary,title,updated),link(@href,@rel),openSearch:totalResults&kinds=album&max-results=3&prettyprint=false
Accept-Encoding: gzip
Authorization: GoogleLogin auth=null
User-Agent: MyApp/1.0 Google-HTTP-Java-Client/1.6.0-beta (gzip)
GData-Version: 2

Sam Hill在哪里做了所有废话?但你知道吗?该URL仍可在我的浏览器中使用。这必须是授权:标题。

在经历了更多的痛苦之后,我设法修改了示例中的身份验证,以便显示通知并允许用户对帐户进行身份验证。现在我可以列出专辑了。

但我仍然不明白:如何在没有身份验证的情况下列出公开相册?

0 个答案:

没有答案