TwitterAPI.js2009-04-13
ã2010-06-17 追è¨ã
徿¥ã¨åãä½¿ãæ¹ã®ã¾ã¾ OAuth ã«å¯¾å¿ãããTwitterAPI2.js ãå
¬éãã¾ããã
ä¸è¨ãTwitAPI.js ã«å¯¾ããã©ããã«ãªãã¾ãã
詳細ã¯ãTwitterAPI2.js ãåç
§ãã¦ä¸ããã
ã2010-06-12 追è¨ãOAuth 対å¿çãå
¬éãã¾ãã
ã¾ã å®æåº¦ã¯ä½ãã§ãããåºæ¬çãªåä½ã¯å¯è½ã«ãªã£ãã®ã§å
¬éãã¾ãããã¤ã³ã¿ã¼ãã§ã¼ã¹ãªã©ã夿´ã«ãªã£ã¦ãã¾ãããåºæ¬çãªä½¿ç¨æã¯å¤ããã¾ããã
TwitAPI.js
ç¾ç¶ã® TwitterAPI.js 㯠2010-06-30 2010-08-31 ããã£ã¦å©ç¨ã§ããªããªãã¾ãã
Twitter ã® BASIC èªè¨¼ã«ãã API æä¾ãã6ææ«ã«çµäºãããã¨ãæ£å¼çºè¡¨ãããBASIC èªè¨¼ãå©ç¨ãã¦ããç¾ç¶ã® TwitterAPI.js ã¯ããã¨åæã«å©ç¨ã§ããªããªãã¾ããTwitterAPI.js ã® OAuth ã¸ã®å¯¾å¿ãæ¤è¨ãã¦ãã¾ãããç¾æç¹ã§ã®äºå®ã¯æªå®ã§ãã
å¾ã£ã¦ãããããæ°ããä½ãã使ããã®ã«ãTwitterAPI.js ã鏿ããã®ã¯ãå§ããã¾ãããTwitter å
¬å¼ã® JavaScript ã©ã¤ãã©ãª @anywhere ããéçºè
åãã«å
¬éããã¦ããã®ã§ããããã¦ãæ¤è¨ä¸ããã
ã追è¨ã
BASIC èªè¨¼ãä¸è¦ãª API ã«ã¤ãã¦ã¯ã7 æä»¥éã TwitterAPI.js ã§ãã®ã¾ã¾å©ç¨å¯è½ãªå¯è½æ§ãããã¾ãããç¾æç¹ã§ã¯ä¸æã§ãã
ã追è¨ã
ç§»è¡æéã 8 æ 16 æ¥ã¾ã§å»¶é·ãã8 æ 31 æ¥ã«ããã¦æ®µéçã«çµäºãããã¨ãã¢ãã¦ã³ã¹ããã¾ããã
»Download
æ¦è¦
Twitter ã® API ã JavaScript ããç°¡åã«ä½¿ãããã®ã©ã¤ãã©ãªã§ãã ä¸é¨ã® Download ãªã³ã¯ãããjs ãã¡ã¤ã«ããã¦ã³ãã¼ããã¦èªã¿è¾¼ãäºã§æ§ã ãªã¡ã½ãããå©ç¨å¯è½ã«ãªãã¾ãã<script type="text/javascript" src="js/twitterapi_x.x.x.js"></script>
ç¹å¾´
- Pure JS å®è£ ãªã®ã§ãµã¼ããµã¤ããä¸è¦
- ã¯ãã¹ãã¡ã¤ã³å¯¾çãå é¨ã«é è½
- API ã«åå¨ããã¡ã½ããããã®ã¾ã¾ JavaScript ã®ã¡ã½ããã¨ãã¦å®è£
- ã³ã¼ã«ããã¯é¢æ°ã¨ãã¦ã颿°ãªãã¸ã§ã¯ãããã®ã¾ã¾æ¸¡ãã
- å¤é¨ã® JS ã©ã¤ãã©ãªã«ä¾åãã¦ããªã
- éå§ç¸®ã§ 7KB ã¨è»½ãã®å®è£
- ãã©ã¦ã¶ã«ãã BASIC èªè¨¼ã§åä½ãã
- å©ç¨ãã¼ã¸ã®ã¨ã³ã³ã¼ãã UTF-8 ã§ãªãäºã«ããæååããåé¿ (Ver 0.9.3ï½)
- POST ã¡ã½ããä½¿ç¨æã®ã³ã¼ã«ããã¯é¢æ°ã«ãä¸é¨å¯¾å¿ (Ver 0.9.3ï½)
- å ¥åæ¸ã¿ã® BASIC èªè¨¼ã®åãã°ã¤ã³ãä¸é¨ãµãã¼ã (Ver 0.9.3ï½)
ãã¼ã¸ã§ã³
ã¾ã æ¯ãã¦ããã¨ã¯è¨ãé£ãã®ã§ãç¾å¨ã®ãã¼ã¸ã§ã³ã¯ 0.9.4 ã§ãã ä¸å ·åãããã¾ããããã³ã¡ã³ããªã©ã§ãç¥ããä¸ããããµã³ãã«
TwitterAPI.js ã使ãã¨ãä¾ãã°ä»¥ä¸ã®ãããªäºãåºæ¥ã¾ãã 以ä¸ã®ãµã³ãã«ãæåã«åä½ãããæã¯ããã©ã¦ã¶ã«ãã BASIC èªè¨¼ã®ãã¤ã¢ãã°ãç«ã¡ä¸ããã®ã§ãTwitter ã®ã¢ã«ã¦ã³ãã§èªè¨¼ãã¦ä¸ãããâªTwitter ã§çºè¨ããâ«
<script type="text/javascript">
function post(f) {
var status = f.status.value;
TwitterAPI.statuses.update(status);
}
</script>
ï¼
<form>
<input type="text" name="status" style="width:300px" /><input type="button" onclick="post(this.form);" value="UPDATE" />
</form>
âªç¹å®ã®ã¦ã¼ã¶ã®ã¿ã¤ã ã©ã¤ã³ãåå¾ããâ«<script type="text/javascript">
function callback(arr) {
var str = '';
for (var i=0; i<arr.length; i++) {
var obj = arr[i];
str += obj.user.screen_name + ':' + obj.text + '<br />';
}
document.getElementById('result').innerHTML = str;
}
function getTl() {
var id = document.getElementById('id').value;
var param = 'count=10';
TwitterAPI.statuses.user_timeline(callback, id, param);
}
</script>
ï¼
<form>
ID <input type="text" id="id" /><input type="button" onclick="getTl();" value="GET TL" />
<div id="result" style="height: 200px; overflow: auto; border: 1px solid #999; background: #ffe;"></div>
</form>
API ããã¥ã¡ã³ã
åºæ¬çã«ã¯æ¬å®¶ã® API ããã¥ã¡ã³ãã®è¨è¿°ãã»ã¼ãã®ã¾ã¾ä½¿ç¨ããäºãåºæ¥ã¾ããTwitterAPI.js ã使ç¨ããå ´åã®åºæ¬çãªæ¸ãæ¹ã¯ä»¥ä¸ã®ãããªå½¢ã§ãã
TwitterAPI.MethodName(callback, id, params);
ãã®ããã«æ¸ãã¨ãMethodName ã«è©²å½ããåä¸åã® API ãå®è¡ãããcallback ã§æå®ãã颿°ã«ãçµæã® JSON ãªãã¸ã§ã¯ããæ¸¡ããã¾ããTwitter API ã«ã¤ãã¦ã¯ãæ¥æ¬èªè¨³ãå ¬éãã¦ä¸ãã£ã¦ããæ¹ãããã®ã§åèã«ãã¦ä¸ããã
Twitter API 仿§æ¸ (åæã«æ¥æ¬èªè¨³ã·ãªã¼ãº)
ä¾ãã°ããµã³ãã«ã§ä½¿ç¨ããç¹å®ã®ã¦ã¼ã¶ã®ã¿ã¤ã ã©ã¤ã³ãåå¾ããã¡ã½ããã§ãããTwitter API ã ã¨ã以ä¸ã®ãã㪠URL ã§ãã
http://twitter.com/statuses/user_timeline/id.format?paramããã«å¯¾å¿ããã¡ã½ããã¯ã以ä¸ã®ããã«ãªãã¾ãã(format 㯠json ã§åºå®)
TwitterAPI.statuses.user_timeline(callback, id, param)ãã®ããã«ãã»ã¼å ¨ã¦ã® API ã¯ããã¨ååã®å°ç¨ã®ã¡ã½ãããç¨æããã¦ãã¾ãã
å¾ã£ã¦ãTwitterAPI.js ã§ä½¿ããã¡ã½ããã®ããã¥ã¡ã³ãã¨ãã¦ã¯ãTwitter API ã®ããã¥ã¡ã³ãããã®ã¾ã¾åç §ãã¦ä¸ããã
ã¾ããcallback ã«ä½ãæå®ããªããã°ãå®è¡çµæã¯ãã®ã¾ã¾æ¨ã¦ãããidãparam ãè¨å®ãã¦ãç¡å¹ãª API ã®å ´åããããã®å¤ã¯ç¡è¦ããã¾ãã
ãã ããä¸é¨ã®ã¡ã½ããã«ã¯ä¾å¤ãããã¾ãã以ä¸ã§ã¯ãã®ä¾å¤ã«ã¤ãã¦èª¬æãã¾ãã
追å ãããã¡ã½ãã
TwitterAPI.users.own(callback, id, param); // Ver 0.9.2ï½å ã ã® API ã«ã¯ãã¦ã¼ã¶ãã¼ã¿ãåå¾ãã http://twitter.com/users/show/id.format ã¨ãã API ããããid ãæå®ããªãäºã§èªåèªèº«ã®ãã¼ã¿ãåå¾ããäºãæå¾ ãããã®ã§ãããå®éã«ã¯ id ãæå®ããªãã¨ã¨ã©ã¼ã«ãªã£ã¦ãã¾ãã¾ãã
ãã®ãããTwitterAPI.js ã§ã¯ãèªè¨¼ãããã¦ã¼ã¶èªèº«ã®ãã¼ã¿ãåå¾ããããã®ã¡ã½ããã追å ãã¾ããã
TwitterAPI.relogin(); // Ver 0.9.3ï½é常ãBASIC èªè¨¼ã«ããèªè¨¼æ å ±ã¯ãã©ã¦ã¶å ã«ä¿æããããã©ã¦ã¶ãå®å ¨ã«çµäºããã¾ã§ä»»æã«æ¸ãæãããã¾ãããã¤ã¾ãä¸åº¦ãã°ã¤ã³ããã¨ãã°ã¢ã¦ãåºæ¥ãªãã®ãæ®éã§ãã
ãã®ãã©ã¦ã¶ã®åä½ã«å¯¾ãã¦ãããã¦å½æ å ±ãéãè¾¼ãäºã§åèªè¨¼ã®ããã®ãã¤ã¢ãã°ãçºçãããåãã°ã¤ã³ãå®ç¾ããããã®ã¡ã½ããã§ãã
ãã ãã»ãã¥ãªãã£çãªå¶éãã IE7 ã§ã¯åä½ããªãäºã確èªãã¦ãã¾ããæãããIE8 ã§ãåæ§ã§ãã
ä»å¾ã®ã¢ãããã¼ãã«ãããFirefox ã Chrome ã§ã使ç¨åºæ¥ãªããªãå¯è½æ§ãããã®ã§ãå©ç¨ã«ã¯æ³¨æãæã£ã¦ä¸ããã
ååãç°ãªãã¡ã½ãã
JavaScript ã®å½åã«ã¼ã«ã®åé¡ãããTwitter API ã¨åãåç§°ã使ç¨ããäºãåºæ¥ãªãã£ããã®ãããã¤ãããã¾ããä¸è¨ã® API ã«ã¤ãã¦ã¯å¥åã®ã¡ã½ãããå¼ã³åºãã¦ä¸ããã
// http://twitter.com/direct_messages.format TwitterAPI.direct_messages.show(func, id, param); // http://twitter.com/direct_messages/new.format TwitterAPI.direct_messages.create(user, text); // http://twitter.com/favorites.format TwitterAPI.favorites.show(func, id, param); // http://blocks/blocking.format TwitterAPI.blocks.blocking.show(func, id, param);
åä½ãç¹æ®ãªã¡ã½ãã
以ä¸ã®ã¡ã½ããã«ã¤ãã¦ã¯ãæ å ±ã®åå¾ã§ã¯ãªãæ å ±ã®éä¿¡ (POST) ãè¡ãããã®ã¡ã½ããã§ãããJavaScript ã®æè¡çå¶ç´ãããçµæãåãåãäºãåºæ¥ã¾ãããæ å ±ã®éä¿¡ã«ããã£ã¦ã¯ç¹å¥ãªå¦çãè¡ããããã¡ã½ããã®å¼ã³åºãæ¹ãå°ç¨ã®ãã®ã«ãªã£ã¦ãã¾ãã
ã¾ããå®è¡çµæãåãåãäºã¯åºæ¥ã¾ããããVer 0.9.3 ãããä»»æã®ã³ã¼ã«ããã¯é¢æ°ãå®è¡åºæ¥ãããã«ãªãã¾ãããPOST å¦çå®äºã®ã¿ã¤ãã³ã°ã§ãã³ã¼ã«ããã¯é¢æ°ãå¼ã³åºããã¾ãã
ãã ããã³ã¼ã«ããã¯é¢æ°ãæå¹ã«æ©è½ããã®ã¯ IE 以å¤ã®ãã©ã¦ã¶ã§ãããã®ç¹ã«ã¯çæãã¦å©ç¨ãã¦ä¸ããã
TwitterAPI.statuses.update(status, func); TwitterAPI.direct_messages.create(user, text, func); TwitterAPI.account.update_location(location, func);ã³ã¼ã«ããã¯é¢æ°ã対å¿ãã©ã¦ã¶ã§ããåä½ããªãäºã¨ãæå®ã§ãã弿°ãåºå®ããã¦ããç¹ãä»ã®ã¡ã½ããã¨å¤§ããç°ãªãã¾ããããã®åä½ã«ã¤ãã¦ã¯ååã® Twitter API ã¨åãåä½ããã¾ãã
åä½ã®è©³ç´°ã«ã¤ãã¦ã¯ãAPI ããã¥ã¡ã³ããåç §ãã¦ä¸ããã
ããã«ã以ä¸ã®ã¡ã½ããã«ã¤ãã¦ã¯å¼ã³åºãæ¹ã¯ä»ã¨åæ§ã§ãããã®ã®ããã¯ãæ å ±ã®éä¿¡ (POST) ãè¡ããããçµæãã³ã¼ã«ããã¯é¢æ°ã§åãåãäºãåºæ¥ã¾ããã
çµæèªä½ãåãåãäºã¯åºæ¥ã¾ããããã³ã¼ã«ããã¯é¢æ°ãæå®ããå ´åã対å¿ãã©ã¦ã¶ã§ã¯ POST å¦çå®äºæã«å¼ã³åºããã¾ãã
friendships.create(func, id, param); friendships.destroy(func, id, param); favorites.create(func, id, param); favorites.destroy(func, id, param); blocks.create(func, id, param); blocks.destroy(func, id, param);
é¤å¤ããã¡ã½ãã
以ä¸ã®ã¡ã½ããã«ã¤ãã¦ã¯ã使ç¨é »åº¦ãä½ãã¨æãããäºããå®è£ ãè¦éãã¾ãããã©ããã¦ãå¿ è¦ã§ããã°ãã½ã¼ã¹ãåç §ã®ä¸ã§ãä»»æã«è¿½å ãã¦ä¸ãããã¡ã½ããã®è¿½å èªä½ã¯ãJavaScript ã®ææ³ãçè§£ãã¦ããã°ã·ã³ãã«ã«åºæ¥ããã¨æãã¾ãã
- trends ç³»ã¡ã½ãã
- saved_searches ç³»ã¡ã½ãã
- oauth ç³»ã¡ã½ãã
- report_spam ç³»ã¡ã½ãã
å使¡ä»¶ã»å¶éäºé ã»ã©ã¤ã»ã³ã¹
ä¸è¨ã®ãã©ã¦ã¶ã§åä½ç¢ºèªãã¦ãã¾ããIE6 / IE7 /
æªç¢ºèªã§ãããIE8 / Safari / Opera ãããã§ããã®ã¾ã¾åä½ããã¨æããã¾ãã
POST ã¡ã½ããä½¿ç¨æãå ã®ãã¼ã¸ã®ã¨ã³ã³ã¼ãã«ããããããUTF-8 ã«å¤æãã¦éä¿¡ããããããæ¥æ¬èªã®æååãã¯çºçãã¾ããã(Ver 0.9.3ï½)
â»Chrome ãé¤ããChrome ã§ã¯ã¹ã¯ãªããã§çæãã iframe ã®æåã³ã¼ããå ã® charset ãå¼ãç¶ã使ç¨ã¨ãªã£ã¦ããããã§ã(ãã®ä»ã®ãã©ã¦ã¶ã¯ããã©ã«ãã§ UTF-8)ãcharset ãæå®ã㦠iframe ãçæããæ¹æ³ãåãããªããããç¾ç¶ã§å¯¾å¿åºæ¥ã¦ãã¾ããã
ã©ã¤ã»ã³ã¹ã¯ MIT License (æ¥æ¬ç wikipedia ã®é ) ã§å ¬éãã¾ãã
æ´æ°å±¥æ´
- Ver.0.9.4 [2010-01-26]
- Firefox 3.6 ã«å¯¾å¿
- ã¨ã¹ã±ã¼ãã®ä¸å ·åãä¿®æ£
- Ver.0.9.3 [2009-11-02]
- å ¨é¢æ¸ãç´ã (ã³ã¼ãæé©åã«ããæ©è½å¢ã»å®¹éæ¸ãéæ)
- API ãææ°ã«è¿½é Twitter API Documentation
- search ç³»ã®ã¡ã½ããã追å
- TwitterAPI.relogin ã追å
- Ver.0.9.2 [2009-05-03]
- TwitterAPI.users.own ã追å
- Ver.0.9.1 [2009-04-13]
- TwitterAPI.friends.ids ã追å
- TwitterAPI.followers.ids
- æ°å¤ã® ID ãæ¸¡ããæã®ä¸å ·åãä¿®æ£
- POST ã§å®è¡ããªãã¨ãããªã API ãä¸é¨ GET ã§å®è¡ãã¦ããä¸å ·åãä¿®æ£
- Ver.0.9.0 [2009-03-19]
- åå ¬é