mixi Developer Center (ミクシィ デベロッパーセンター)

mixiアプリ

mixiアプリ » 技術仕様(Graph API方式) » モバイル » 画像やFlash等の表示について

画像やFlash等の表示について

mixiアプリモバイル内で画像やFlashを表示する際には、通常のWebサイトで表示するのと同じようにHTMLタグを記述してください。アプリケーションが実行される際に、自動的にURLがmixiサーバを経由するように書き換えられます。開発者側で何か特別なことをしていただく必要はありません。
また、oauth_signatureについてもHTMLファイルのリクエスト時と同様に送信されますので、リクエストの検証に利用することが可能です。

画像を表示する

アプリケーションのページ内で画像を表示するには、次のように記述します。

<img src="http://example.com/image.jpg" width="20" height="20" />

Flashを表示する

Flashについても画像と同様の方法で記述可能です。ただし、設置したswfファイルへのリクエストは携帯電話からではなく、mixiサーバから行われることになります。swfファイルがmixiのドメインで配信されることになるため、もしFlash内で外部サーバとの通信を行う場合は、適切な crossdomain.xml を設置する必要がありますのでご注意ください。

1. インタラクティブ再生

swfファイルのURLをそのまま記述してください。

<a href="http://example.com/flash.swf">Flash再生</a>

2. インライン再生

インライン再生も同様に、swfファイルのURLをそのまま記述してください。

<object data="http://example.com/flash.swf"
        type="application/x-shockwave-flash" width="200" height="40">
</object>

Flashファイル内からのページ遷移について

Flash内からmixiアプリ内の別ページに遷移する場合のURLは、セキュリティ上の理由から制限されています。urlパラメータで指定したURLが、ガジェットXMLで指定されたSAPサーバのスタートURLと一致しない場合はエラーとなります。

例えば、スタートURLが次のように指定されている場合、

<Content type="url" view="mobile" href="http://example.com/foo/bar.html" />

利用可能/不可能なURLはそれぞれ以下のようになります。ディレクトリに関しては、スタートURLより下の階層であれば利用可能です(4番目の例)。

1) OK

http://ma.mixi.net/[アプリID]/?url=http%3A%2F%2Fexample.com%2Ffoo%2Fbaz.html

2) NG

http://ma.mixi.net/[アプリID]/?url=http%3A%2F%2Fexample2.com%2Ffoo%2Fbar.html

3) NG

http://ma.mixi.net/[アプリID]/?url=http%3A%2F%2Fexample.com%2Fbar%2Ffoo.html

4) OK

http://ma.mixi.net/[アプリID]/?url=http%3A%2F%2Fexample.com%2Ffoo%2Fbar%2Fbaz.html

なお、Flashではない通常のHTMLで作成されたページ間のリンクについては、「ページ遷移とAPIアクセス」に記載の通り、特に制限無く行うことができます。

リダイレクトについて

通常は意識する必要はありませんが、画像やFlashを表示するためのmixiサーバは、アプリ用のサーバとはドメイン名が異なります。このため、これらサーバ間を跨いでリダイレクトしようとする場合には注意が必要となります。

HTMLページにてPOSTされたデータを元に画像やFlashページにリダイレクトする場合は、以下のようにLocationヘッダで出力する遷移先URLを設定します。urlパラメータの値が実際にコンテンツが置かれているURLになります。

HTTP/1.x 302 Found
Location: http://mm.mixi.net/[アプリID]/?guid=ON&url=http%3A%2F%2Fexample.com%2F

この場合も、urlパラメータがガジェットXMLで指定されたスタートURLとディレクトリ階層が一致しなければならい制限は適用されます。

署名付きリクエストについて

画像やFlash等のファイルについては、デフォルトではAuthorizationヘッダのOAuth Signatureは付加されません。利用ユーザやリクエストの妥当性を検証するために必要な場合には、以下のように’signed=1′パラメータを追加するようにしてください。

画像を表示する場合:

<img src="http://example.com/image.jpg?signed=1" width="20" height="20" />

リダイレクトを行う場合:

HTTP/1.x 302 Found
Location: http://mm.mixi.net/[アプリID]/?guid=ON&url=http%3A%2F%2Fexample.com%2F%3Fsigned%3D1

このページの上部へ