使用 Flikr.net API 获取所有 Flikr 照片集的列表
本文关键字:Flikr 照片集 列表 获取 net API 使用 | 更新日期: 2023-09-27 18:30:39
我正在尝试将所有照片集的名称添加到列表框中。我有令牌和一个有效的Flickr对象.如何在c#中执行此操作。在标准 Flikr API 中
flickr.photosets.getList
被使用,但我如何在 .NET 中实现这一点
从这里撕下来
C# 中的 Flickr 库
最近几天,我一直在研究一个示例 C# 库,以使用 Flickr 自己的 API 访问 Flickr 图片。此库是一个轻量级 C# 类,提供两个基本功能:(1) 检索帐户中的照片集列表和 (2) 检索有关照片集中照片的信息。
使用此类,您可以在Flickr帐户中检索照片集,并将它们显示在包含几行代码的组合框中,如下所示:
Flickr flickr = new Flickr("YourApiKey", "YourUserID");
List<PhotoSetInfo > photosets = flickr.GetPhotoSets();
cboPhotoSets.DataSource = photosets;
cboPhotoSets.DataTextField = "Title";
cboPhotoSets.DataValueField = "PhotoSetID";
cboPhotoSets.DataBind();
选择照片集后,您可以使用以下代码检索有关其中照片的信息(如标题和URL)。在此示例中,我将照片列表绑定到 ASP.NET 数据列表控件以显示它们:
Flickr flickr = new Flickr("YourApiKey", "YourUserID");
List<PhotoInfo> photos = flickr.GetPhotosInSet(cboPhotoSets.SelectedValue);
listPhotos.DataSource = photos;
listPhotos.DataBind();
lblPhotosMsg.Text = (photos.Count == 0) ? "No photos in this photoset" : "";
Flickr API 支持多种请求和响应格式。我在我的FlickrLib库中使用REST格式的请求和响应。一个典型的Flickr REST请求看起来像这样:
http://api.flickr.com/services/rest/?method=methodName¶meter1=value1¶meter2=value2
其中methodName是要调用的方法的名称,例如flickr.photosets.getList以返回照片集列表。
Flickr 提供的 REST 响应是包含请求相关信息的 XML 文档。对于 flickr.photosets.getList 方法,响应将是一个具有照片集节点和多个照片集子节点的 XML 文档。这些 XML 响应很容易使用 LINQ to XML 进行分析,并将它们转换为 C# 强类型对象(如 PhotoSetInfo 和 PhotoInfo),然后可以绑定到 .NET 类。这正是FlickrLib库所做的,它为Flickr API功能提供了一个包装器,以便您可以轻松地从.NET应用程序中使用它。
引用
可以从 http://hectorcorrea.com/downloads/FlickrLibDemo.zip 下载此类的 C# 源代码
有关 Flick API 的信息,请访问 http://www.flickr.com/services/api/有很多关于 API 提供的内容以及如何使用它的信息。API 提供了大量 Flickr 功能,您可能会发现这些功能很有用,而我的小类没有公开这些功能。
您需要从Flickr获取API密钥,以便通过此类或任何其他类使用其API。API密钥是免费的,但它是必需的,以便Flickr可以防止单个用户向其网站提交太多请求并将其删除。
在 2008-11-30 下午12:27:00 永久链接