トップ > ラボブログ

ラボブログ

« そろそろアダルトアフィリエイトに対する拒否権を持ちたい。 | メイン | Poken で SNSアカウント登録トラブル »

OpenSocial で Owner と Viewer の ID を取得する

あとで読む

スパイスラボ神部です。


OpenSocial 初歩の範疇で、OpenSocial で Owner と Viewer の ID を取得する方法をまとめてみたいと思います。


-ネストが好きだ! - Favorites!


Owner ID を取得する


てきとうな View にこんなコードを書けばオーナーIDは取得できます。


<![CDATA[
<script type="text/javascript">
var req = opensocial.newDataRequest();
req.add(req.newFetchPersonRequest('OWNER'), 'owner');
req.send(function(data) {
var owner = data.get('owner').getData();
var oid = owner.getField(opensocial.Person.Field.ID);
});
</script>
<div id="displayId"></div>
]]>


ひとつ注意したいのは、デバッグ用にネストされた関数の中で document.write してしまうとなぜかコンテナの処理が止まってしまうことがあるところ。


対策としては、外部に空の DIV などをつくっておいて、そこに innerHTML で挿入すると大丈夫です。


Viewer ID を取得する


OWNER と VIEWER では newFetchPersonRequest 引数が若干違います。


<![CDATA[
<script type="text/javascript">
var req = opensocial.newDataRequest();
req.add(req.newFetchPersonRequest(
opensocial.IdSpec.PersonId.VIEWER), 'viewer');
req.send(function(data) {
var viewer = data.get('viewer').getData();
var vid = viewer.getField(opensocial.Person.Field.ID);
document.getElementById("displayId2").innerHTML = vid;
});
</script>
<div id="displayId2"></div>
]]>


こんな感じです。簡単ですネ!


でも ID の取得ひとつでこれだけコードを書かなきゃ行けないのも、ちょっと冗長な気もします。どうなんでしょう?

 



関連記事



ブックマークに追加する この記事についてTwitterでツイート

トラックバック

このエントリーのトラックバックURL:
http://www.spicebox.jp/cgi-bin/mt/mt-tb.cgi/939

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

mixiアプリ本
4/22発売!

mixiアプリをつくろう!
OpenSocialで学ぶ
ソーシャルアプリ



(株)スパイスボックス
神部 竜二(著)

書籍情報






検索



神部竜二
ブログ執筆者の一人です。ネットの新しい話題や Web まわりのプログラミング、Web 広告について書いていきたいと思います。


About

2009年04月07日 22:35 に投稿されたエントリーのページです。

ひとつ前の投稿は「 そろそろアダルトアフィリエイトに対する拒否権を持ちたい。 」です。

次の投稿は「 Poken で SNSアカウント登録トラブル 」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

SEO ブログパーツ  

+ インデックス数計測 +