查询特定PhotoID的Picasa网络相册以检查是否存在

时间:2013-01-21 09:48:45

标签: google-api picasa

我有一个PhotoID列表以及显然需要的用户ID,因为PhotoID不是全球唯一的,我正在尝试获取照片列表以测试照片是否仍可访问。

我到目前为止找到的最接近的是https://groups.google.com/forum/?fromgroups=#!searchin/google-picasa-data-api/photos $ 20by $ 20id / google-picasa-data-api / OzLyJOVpd4M / 7xiSPB4Tg9YJ,其中提到以下查询应该让我在那里:

http://picasaweb.google.com/data/feed/api/user/default/?kind=photo&v=2&fields=entry[gphoto:id=1234 or gphoto:id=4567]&prettyprint=true

然而这似乎不起作用,即使与我知道存在的照片一起使用,我也得到:

<?xml version='1.0' encoding='UTF-8'?>
<feed xmlns='http://www.w3.org/2005/Atom' xmlns:app='http://www.w3.org/2007/app' xmlns:gphoto='http://schemas.google.com/photos/2007' xmlns:media='http://search.yahoo.com/mrss/' xmlns:gd='http://schemas.google.com/g/2005'/>

或者,如果我指定了有效的access_token,我会得到以下内容,尽管令牌可以正常处理未上市照片的基本查询。

Token invalid - AuthSub token has wrong scope

更新

我设法使用以下内容查询单个gphoto:id工作:

https://picasaweb.google.com/data/feed/api/user/default?kind=photo&v=2.0&fields=entry[gphoto:id=5833637579580309538]

但是,一旦我尝试使用||(如下所示),我就会收到如下错误:

Invalid selector expression at position 35: no viable alternative at character '|'  

如果我在Google API文档中使用“或”,则只会忽略除第一行gphoto:id之外的所有内容。

更新2

实际上看起来下面的DOES可以正常工作,但不适用于所有照片:

https://picasaweb.google.com/data/feed/api/user/default?kind=photo&v=2.0&fields=entry[gphoto:id=5827988830283069682%20or%20gphoto:id=5812362364496750642](gphoto:id)&prettyprint=true

是否有某种权限可以阻止某些照片直接查询?

1 个答案:

答案 0 :(得分:2)

你需要使用'||'而不是请求中的“或”。我可以通过此请求在相册中选择多张照片。

https://picasaweb.google.com/data/feed/api/user/default/albumid/{albumid}?kind=photo&[gphoto.id={photo1 id}||gphoto.id={photo2 id}]