Google Dev Fest 2010 Japan LT: OpenSocial JavaScript API is good, Lightweight JavaScript API is better, OpenSocial jQuery is best

2,627
-1

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,627
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
13
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Google Dev Fest 2010 Japan LT: OpenSocial JavaScript API is good, Lightweight JavaScript API is better, OpenSocial jQuery is best

  1. 1. OpenSocial JavaScript API is good,  Lightweight JavaScript API is better,  OpenSocial jQuery is best  Google DevFest 2010 Japan  2010年3月11日 なかじまんソフトウェア株式会社 中嶋信博  http://nakajiman.lrlab.to/ 1 
  2. 2. テーマは、  OpenSocial JavaScript API  と、ライブラリです。 2 
  3. 3. Hello, Viewer  で、比較します。 3 
  4. 4. OpenSocial JavaScript API is good <script type="text/javascript">  function init() {  var req = opensocial.newDataRequest();  req.add(req.newFetchPersonRequest(  opensocial.IdSpec.PersonId.VIEWER), "viewer");  req.send(function(data) {  var viewer = data.get("viewer").getData();  var id = viewer.getId();  var name = viewer.getDisplayName();  var thumbnailUrl = viewer.getField(  opensocial.Person.Field.THUMBNAIL_URL);  });  }  gadgets.util.registerOnLoadHandler(init);  4  </script> 
  5. 5. Lightweight JavaScript API is better  <script type="text/javascript">  function init() {  osapi.people.get({ userId: '@viewer' }).execute(  function(viewer) {  var id = viewer.id;  var name = viewer.nickname;  var thumbnailUrl = viewer.thumbnailUrl;  });  }  gadgets.util.registerOnLoadHandler(init);  </script>  RPC Protocol­base API 5 
  6. 6. OpenSocial jQuery is best  <script type="text/javascript" src="opensocial­jquery.js"></script>  <script type="text/javascript">  jQuery(document).ready(function($) {  $.get('/people/@viewer', function(data) {  var viewer = data[0];  var id = viewer.id;  var name = viewer.nickname;  var thumbnailUrl = viewer.thumbnailUrl;  }, 'data');  }); </script>  REST Protocol­like Library 6 
  7. 7. なぜって jQuery.ajax で …  ガジェットから、 クロスドメインで、 著名付きリクエストで、 外部サーバを呼び出せるし、 7 
  8. 8. さらに jQuery.ajax で …  ガジェットから、  REST Protocol 仕様風の、 仮想エンドポイントを介して、 リソースにアクセスできるし、 8 
  9. 9. People  •  GET /people/@viewer/@self  •  GET /people/@viewer/@friends  •  GET /people/@viewer/@friends/@app  •  GET /people/@owner/ …  •  GET /people/<id>/ … 9 
  10. 10. AppData  •  GET or POST /appdata/@viewer/@self  •  GET /appdata/@viewer/@friends  •  GET /appdata/@viewer/@friends/@app  •  GET /appdata/@owner/ …  •  GET /appdata/<id>/ … 10 
  11. 11. Activities  •  GET or POST /activities/@viewer/@self  •  GET /activities/@viewer/@friends  •  GET /activities/@owner/ …  •  GET /activities/<id>/ …  Message •  POST /messages/@viewer/@outbox  11 
  12. 12. Albums and MediaItems  •  GET /albums/@viewer/@self  •  GET /albums/@owner/ …  •  GET /albums/<id>/ …  •  GET /mediaitems/@viewer/@self/<id>  •  GET /mediaitems/@owner/ …  •  GET /mediaitems/<id>/ … 12 
  13. 13. Communities  •  GET /communities/@viewer/@self  •  GET /communities/@owner/ …  •  GET /communities/<id>/ …  Classmates •  GET /schools/@viewer/@self  •  GET /schools/@selected  13 
  14. 14. つまり jQuery.ajax で …  ガジェットから、 ひとつの方法だけで、 あらゆるリソースに、 アクセスできるってことです。 14 
  15. 15. Apache Shindig なら使えます  http://shindig.apache.org/  •  OpenSocial コンテナ  – mixi アプリ for PC  – goo ホームガジェット  – CREYLE アプリ  – iGoogle ガジェット  – Google Friend Connect ガジェット  •  Gadgets コンテナ  – infoScoop OpenSource  – Google Wave ガジェットなど 15 
  16. 16. 日本発の OpenSocial 向け  JavaScript ライブラリもチェック!  •  jOpenSocial  – http://code.google.com/p/jopensocial/  •  jQuery.opensocial_simple Plugin  – http://tech.kayac.com/archive/jquery­  opensocial­simple.html  •  mixi app framework mist.js  – http://tech.kayac.com/archive/mixi­app­  framework­mist.js.html 16 
  17. 17. OpenSocial JavaScript API is good,  Lightweight JavaScript API is better,  OpenSocial jQuery is best  Check out this project:  http://code.google.com/p/opensocial­jquery/ 17 
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×