開発ガイド
ミニアプリの開発が簡単になりました。開発者向けの情報はこちらです。
ミニアプリでパラメータを受け取る

ディープリンクでパラメータを渡す 

ミニアプリではホストアプリからパラメータを取得することが可能です。例えば、ミニアプリへのディープリンクにクエリパラメータ (i.e. ?param=value)とフラグメント (i.e. #someValue)を持たせることで、ミニアプリから当該パラメータへのアクセスが可能になります。

リンクアプリのディープリンク設定はこちらです。

  • https://one.rakuten.co.jp/miniapp/MINI_APP_ID?yourParam=yourValue&anotherParam=test#yourFragmentValue

パラメータを受け取る 

ミニアプリを起動すると、ミニアプリのWebViewのURLにクエリパラメータとフラグメントが付加されます。

  window.location.search および window.location.hashのウェブスタンダードを通じてパラメータにアクセスできます。以下は一例です。

            
        
                                    

// Retrieve "yourParam" parameter

const param = window.url.searchParams.get("yourParam")

 

// Retrieve fragment value

const fragment = window.location.hash

注意:パラメータのサニタイズ・使用パラメータへのセキュリティ確保等はミニアプリ側でご用意ください。クロスサイトスクリプティング攻撃等への対策も強く推奨しております。詳しくは、OWASPの DOM based XSS Prevention Cheat SheetWeb Parameter Tampering Guideをご確認ください。

サポートされる値 

クエリパラメータおよびフラグメントではRFC 3986(URI仕様)に定められた標準文字をサポートしています。 クエリ とフラグメントのセクションをご参照ください。 

サポートしている標準文字

  • 0 - 9
  • a - z
  • A - Z
  • ? / : @ - . _ ~ ! $ & ' ( ) * + , ; = # [ ]
    • #」は1文字のみ使用可能です。「#」はフラグメント文字列の開始点区切りに使用します)。
    • Androidの場合:「'」は、AndroidデバイスのChrome WebViewによって自動でパーセントエンコード値「 %20」に変換されます。
  • パーセントエンコード文字(「%」に16進数2文字の形式)

注記1:サポート対象外の文字がパラメータとして渡された場合、ミニアプリが起動してもパラメータを受け取ることはできません。 

注記2:Androidデバイスでは、スペース、日本語、その他UTF-8などの文字はChrome WebViewによって自動でパーセントエンコードされます。プラットフォーム間の問題を避けるため、パラメータにご使用の際は必ず手動でパーセントエンコードしてください (encodeURIComponentを使用するなど) 。

move to top