mixiアプリのテスト

ちょっと時間があったので、mixiアプリのテストをしてみました。
主な目的は、外部ファイルの読み込みです。


JavaScript自体、めったに触らないので試行錯誤して、とりあえるRSSフィードを読むことに成功。
UIとかまだ面倒なので、とりあえず「新刊.net」の固定URIを指定しました。


アプリとしては役立たずなのであまり意味はありませんが、
http://platform001.mixi.jp/view_appli.pl?id=1019
に公開してもらっています。


エントリーが3つまでしか表示されないのは、

gadgets.io.ContentType.FEED

の仕様かな?
gadgets.io.ContentType.TEXT, gadgets.io.ContentType.JSON ともにちゃんと動作してるっぽいです。


コードは以下の通りとなります。

<?xml version="1.0" encoding="UTF-8" ?>
<Module>
  <ModulePrefs title="rss feed test (mixi appli)">
    <Require feature="opensocial-0.8" />
  </ModulePrefs>
  <Content type="html">
  <![CDATA[
      <script type="text/javascript">
      // witten by YOD-Y,hidea/rukari.com

      function request() {
        var url = "http://sinkan.net/?action_rss=true&mode=today";
        var params = {};
        params[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.FEED;
        gadgets.io.makeRequest(url, response, params);
      }

      function response(obj) {
        var html = "";

        // Feed title
        html += "<a href=\"" + obj.data.Link + "\">" + obj.data.Title + "</a>";
        html += "<hr />";

        // Entry list
        for (i in obj.data.Entry) {
          var entry = obj.data.Entry[ i ];
          html += "<a href=\"" + entry.Link + "\">" + entry.Title + "</a>";
          html += "<hr />";
        }

        // Output
        var div = document.getElementById("feed");
        div.innerHTML = html;
      }

      gadgets.util.registerOnLoadHandler(request);
    </script>

    <div id='feed'></div>
  ]]>
  </Content>

</Module>