2009-02-19

opensocial-jquery はあらゆるリクエストのタイムアウトを検出できます

おはようございます。なかじまんです。今後 opensocial-jquery を使うちょっとした理由をちょくちょく投稿していきます。

opensocial-jquery は gadgets.io.makeRequest や opensocial.DataRequest をすべて jQuery.ajax で扱う ようにデザインしています。

そのため、jQuery.ajax があらかじめ持つタイムアウトの検出もそのまま使えます。つまり、外部サイトへのリクエストであっても、OpenSocial コンテナへ(から)のリクエストであっても、あらゆるリクエストのタイムアウトが検出できるというわけです。

↓これとか。

$.ajax({
url: 'http://example.com/data.json',
dataType: 'json',
success: function(data, status) {
console.log(data, status);
},
error: function(xhr, status, e) {
console.info(xhr, status, e);
},
timeout: 5000 // 5s
});

↓これとか。

$.ajax({
url: '/people/@viewer/@friends',
data: {},
dataType: 'data',
success: function(data, status) {
console.log(data, status);
},
error: function(xhr, status, e) {
console.info(xhr, status, e);
},
timeout: 5000 // 5s
});

opensocial-jquery が jQuery plugin ではなく、あえて jQuery 自体に手を加えている理由は、こういうメリットを享受するためなんですよ。

0 件のコメント: