我将图片上传到Picasa并得到回应:

PhotoEntry returnedPhoto = myService.insert(feedUrl, PhotoEntry.class, myMedia);


现在,我想提取图像的直接URL。如果我做...

for (Link link : returnedPhoto.getLinks()) {
    System.out.println(link.getHref());
}


...我获得正确的网址,但它们是间接的,例如https://picasaweb.google.com/data/feed/api/user/blablabla这样的URL并非指向图像文件,而是指向其中包含该图像的Picasa页面。

我想要得到的是这样的URL:https://lh4.googleusercontent.com/blablabla/blablabla/blabla/bla/my_image.jpg

我已经发现.Net用户可以使用某些类“ PicasaQuery”来做到这一点。但是我猜这个类仅在.Net版本中存在,因为我在gdata-java-library中找不到它。如何以其他方式提取图像的直接URL?

最佳答案

也许this answer会帮助您。

PhotoEntry returnedPhoto = myService.insert(feedUrl, PhotoEntry.class, myMedia);
String href = returnedPhoto.getHtmlLink().getHref();
if (returnedPhoto.getMediaContents().size() > 0) {
  href = returnedPhoto.getMediaContents().get(0).getUrl();
}
System.out.println(href);

07-24 13:10