InfoQ

News

Google、YouTube、Facebookおよびその他Web 2.0 APIへのC#およびVB .NETライブラリ

作者 Abel Avram, 翻訳者 編集部 投稿日 2008年4月5日 午後12時51分

コミュニティ
.NET
トピック
Web 2.0
タグ
Web services,
Visual Basic.NET,
C#

Scott Hanselman氏による最近のブログの投稿(ブログ・英語)で、 Web全体に広まっているWeb 2.0 とのインターフェイスに有効な.NETライブラリのリストを編纂した。これらのサービスの利用方法の例を以下に紹介している。以下はリストからの抜粋である。

Digg

DiggのAPIはRESTと呼ばれ、通信にXMLを使用する。DiggApiNet(source)は、Digg APIの.NETラッパーである。Digg API.NET(source)CodeProjectで利用可能な別のラッパーである。Hanselman氏による以下の例では、指定されたURLから XmlDocumentが作成され、ロードされる。そしてXML ノードがDiggの特定のオブジェクトにコピーされる。

private const string get_popular = "http://services.digg.com/stories/popular/comments/{0}";

public DiggComments GetPopular()
{
return GetPopular(new Hashtable());
}
public DiggComments GetPopular(Hashtable args)
{
string uri = String.Format(get_popular, HttpBuildUrl(args));
return new DiggComments(Request(uri));
}
public DiggComments(XmlDocument xml_doc) : base(xml_doc, "events")
{
_comments = new List();
if (xml_doc.SelectSingleNode("events") == null
|| xml_doc.SelectSingleNode("events").SelectNodes("comment") == null) {
throw new DiggApiException("XML response appears to be malformed, or contains unexpected data.");
}
foreach (XmlNode node in xml_doc.SelectSingleNode("events").SelectNodes("comment")) {
_comments.Add(new DiggComment(node));
}
}

Facebook

Facebookは、複雑なAPI(source)を開発し、それに対する充実した.NETサポートがある。CodePlexは、 2つの関連プロジェクトをホストする。1つはFacebook.NET(source)であり、Facebookアプリケーションの開発やFacebook APIにアクセスする際に使用される.NET libraryを提供する。もう1つは、Facebook Developer Toolkit(source)であり、もともとClarity Consulting Inc.(サイト・英語)によって開発された。Jay Lagorio氏はVB.NETのFacebookラッパー(source)を記述し、fbasync(source)は、 Facebookの非同期APIに焦点を当てたCodePlexプロジェクトである。

GoogleおよびYouTube

GData(source)というGoogleのAPIは、HTTP上でXMLを使用して通信する一連のライブラリである。GDataは、 YouTube、Blogger、 Google Calendar、Notebook、Spreadsheets、Documents、Picassaなどで使用されている。Googleは.NETデベロッパにラッパー(source)を提供しているので、Google提供の.NET Developer's Guide(source)で紹介されている以下の例にあるように、かなり簡単にGDataコンテンツの読み書きができる。

AtomEntry newPost = new AtomEntry();
newPost.Title.Text = "Marriage!";
newPost.Content = new AtomContent();
newPost.Content.Content = "<div xmlns='http://www.w3.org/1999/xhtml'>" +
"<p>Mr. Darcy has <em>proposed marriage</em> to me!</p>" +
"<p>He is the last man on earth I would ever desire to marry.</p>" +
"<p>Whatever shall I do?</p>" +
"</div>";
newPost.Content.Type = "xhtml";
newPost.Authors.Add(new AtomPerson());
newPost.Authors[0].Name = "Elizabeth Bennet";
newPost.Authors[0].Email = "liz@gmail.com";

AtomEntry createdEntry = service.Insert("http://www.blogger.com/feeds/" + blogId + "/posts/default", newPost);

詳細およびさまざまなWeb 2.0サービスで利用可能なライブラリについて詳しくは、Scott Hanselman氏による投稿(ブログ・英語)がよい開始点になる。

原文はこちらです: http://www.infoq.com/news/2008/04/Web20API

ブックマーク
digg+,
reddit+,
del.icio.us+,
dzone+,
Hatena

No comments

返信

ジャンル別一覧

BlazeDSとAMFでWebとデスクトップのアプリケーションを構築する

現在のRIAアーキテクチャにおいて、クライアント/サーバーの通信は重要な位置を占めています。本稿では、James WardとShashank TiwariがアドビによるオープンソースのBlazeDSメッセージングサーバーの世界へ飛び込みます。

業務ソフトに手を加えずに暗号化を実現する~秘文の挑戦~

hibun

ウィルス対策ソフトや情報漏えい防止用のソフトは、いわば影の存在です。ユーザの操作性やGUIを工夫する以上に、いかに目立たない存在となるかにその技術を注ぎ込んでいます。ここでは日立ソフトが開発した「秘文」の事例を紹介します。

Google Chartとgchartrbの紹介

Google Chartは、チャートを作成するためのWebサービスです。本稿では、Google Chartのインターフェースと、Rubyコードから簡単にチャートを生成することができるgchartrbライブラリの説明をします。

SOAを超えて: 動的な業務アプリケーションのための新しいエンタープライズアーキテクチャフレームワーク

全二回からなるこの記事では、ダイナミックビジネスアプリケーション(Dynamic Business Applications:DBAs)の開発についての全体的な眺望を、アーキテクチャと方法論の観点から見ていくことになります。我々のゴールは、「ビジネスの変化や、その他に必要とされる変更に対して、いかにして容易に適応できるアプリケーションを構築していくか」を導きだすことです。

ESB接続形態のオルタナティブ

本稿では、Adrien Louis氏がESBベースのSOAに対する2つの接続形態についての賛否について説明しています。その2つとは、会社での単一のESB対「部門毎」に相互接続するESBによるシステムです。

AjaxプログラマのためのJavaOne2008 -GrizzlyでComet!-

誕生から2年を経てCometは「何が出来るのか」という議論から、「いかに実現するか」という議論に関心が移ってきたように見えます。そこで本稿では同じくJavaOneで数多く取り上げられたNetBeans 6.1とGlassFish v3を使いながら、サンプルを交えてCometを解説していく事にします。

SharePoint Webサービスを始めましょう

この記事では、WSS3とMOSS 2007に難しい設定など一切せず、すぐに利用可能なWebサービスと、Javaと.NETからそのWebサービスを消費する方法に目を向けます。

レトロスペクティブのプライムディレクティブに対する問い

この記事の始まりは、知的で思慮深い人たちの魅力的なグループが食事会を終えて話をしているところです。話はレトロスペクティブ(振り返り)プロセスの要であるプライムディレクティブ(最初の指示)に及んでいます。