我正在查询Picasa图库,当我深入查看返回的条目时,我找不到完整尺寸的图片。我只能看到一个更小,重新调整大小的图像(data[0].Content.AbsoluteUri
)。我知道Google保留了完整尺寸的图片,因为当我在线查看我的Picasa图库时,我可以看到它。全尺寸图片在哪里?
var picasaService = new PicasaService("Gallery");
var photoQuery = new PhotoQuery(PicasaQuery.CreatePicasaUri("GOOGLEUSERNAME", "GALLERYID"));
var photoFeed = picasaService.Query(photoQuery);
var data = photoFeed.Entries;
答案 0 :(得分:4)
隐藏在文档中,可以指定Feed中图像的大小。这是使用“imgmax”参数:
https://developers.google.com/picasa-web/docs/2.0/reference#Parameters
可以将值设置为“d”以请求全尺寸图像
c#API不直接支持,但您可以使用PhotoQuery对象上的“extraParameters”字段获得所需的结果。
然后您的代码变为:
var picasaService = new PicasaService("Gallery");
var photoQuery = new PhotoQuery(PicasaQuery.CreatePicasaUri("GOOGLEUSERNAME", "GALLERYID"));
// add the extra parameter to request full size images
photoQuery.ExtraParameters = "imgmax=d";
var photoFeed = picasaService.Query(photoQuery);
var data = photoFeed.Entries;
答案 1 :(得分:1)
简短回答:
媒体:群组/媒体:内容[@ url] 获取gdata照片的路径来自picasa GData服务的ENTRY包含您想要的链接。
更长的回答:
使用oauth 2.0游乐场查询我的一张照片...
Request:
GET /data/entry/api/user/rowntreerob/albumid/5682316071017984417/photoid/5682316083381958690?alt=json
注意:使用http://json.parser.online.fr/
过滤回复Response:
"media$group":{
"media$content":[
{
"url":"https://lh3.googleusercontent.com/-_FFMNGPU1TQ/TtukXyN4eCI/AAAAAAAACso/EzPmut2iKVQ/DSC01612.JPG",
"height":512,
"width":341,
"type":"image/jpeg",
"medium":"image"
}
您想要的大型照片的链接位于上方的url属性中...
使用“fields =”标记,您可以直接从gdata获取链接,如下面的req / resp ...
GET /data/entry/api/user/rowntreerob/albumid/5682316071017984417/photoid/5682316083381958690?alt=json&fields=media%3Agroup%2Fmedia%3Acontent%5B%40url%5D
{
"version":"1.0",
"encoding":"UTF-8",
"entry":{
"xmlns":"http://www.w3.org/2005/Atom",
"xmlns$media":"http://search.yahoo.com/mrss/",
"media$group":{
"media$content":[
{
"url":"https://lh3.googleusercontent.com/-_FFMNGPU1TQ/TtukXyN4eCI/AAAAAAAACso/EzPmut2iKVQ/DSC01612.JPG",
"height":512,
"width":341,
"type":"image/jpeg",
"medium":"image"
}
]
}
}
}