我的代码是:
FlickrNet.Flickr flickr = new FlickrNet.Flickr(apiKey, shardSecret);
FlickrNet.Flickr.CacheDisabled = true;
PhotoCollection photos = flickr.PeopleGetPublicPhotos(flickrUser);
linkPhoto = "http://farm" + photo.Farm + ".staticflickr.com/" + photo.Server + "/" + photo.PhotoId + "_" + photo.OriginalSecret + "_o."+photo.OriginalFormat;
但似乎photo.OriginalSecret
和photo.OriginalFormat
返回一个空字符串?
还尝试使用photo.OriginalUrl
但是相同:空字符串?我哪里错了?
答案 0 :(得分:2)
也可以使用这些选项:
options.Extras = PhotoSearchExtras.OriginalFormat;
这将使Flickr在所有情况下都包含原始URL,您可以在其中查看它。当你使用LargeURL时,这是特别方便的,因为有些照片不够大,不足以拥有大容量,在这种情况下,Flickr会给你一个指向“此图像当前不可用”的langeURL图片。
然后,如果你想找到一个图像的“最大版本”,你可以这样做:
public string BiggestVersionUrl()
{
// find biggest version for downloading later
string BiggestVersionUrl1 = string.Empty;
var p = this.Photo;
if (!string.IsNullOrEmpty(p.OriginalUrl))
BiggestVersionUrl1 = p.OriginalUrl;
else if (!string.IsNullOrEmpty(p.LargeUrl))
BiggestVersionUrl1 = p.LargeUrl;
else if (!string.IsNullOrEmpty(p.MediumUrl))
BiggestVersionUrl1 = p.MediumUrl;
else if (!string.IsNullOrEmpty(p.SmallUrl))
BiggestVersionUrl1 = p.SmallUrl;
return BiggestVersionUrl1;
}