Skip to Content
dApps
このページの内容

wallet_requestPermissions

dApp が特定のメソッドにアクセスする権限を要求します。EIP-2255 ウォレット権限システムの一部です。


パラメーター

Array 権限リクエストオブジェクトを含みます:

フィールド型説明
eth_accountsobjectユーザーアカウントへのアクセスを要求

戻り値

Array 権限オブジェクトの配列:

フィールド型説明
parentCapabilitystring権限名
datenumber付与された時刻のタイムスタンプ
caveatsarray権限に対する制限

例

const permissions = await window.$onekey.ethereum.request({ method: 'wallet_requestPermissions', params: [{ eth_accounts: {} }] }) console.log('Granted permissions:', permissions) // [{ parentCapability: 'eth_accounts', date: 1234567890, caveats: [...] }]

特定の権限を確認

const permissions = await window.$onekey.ethereum.request({ method: 'wallet_requestPermissions', params: [{ eth_accounts: {} }] }) const hasAccountsPermission = permissions.some( p => p.parentCapability === 'eth_accounts' ) console.log('Has accounts permission:', hasAccountsPermission)

エラー

コードメッセージ説明
4001ユーザーがリクエストを拒否ユーザーが権限リクエストを拒否
-32602無効なパラメーター無効な権限リクエスト

注意事項

  • 現在は次の eth_accounts 権限のみに対応しています
  • 未接続の場合、このメソッドを呼び出すと接続プロンプトが表示されます
  • 権限はユーザーが取り消すまで保持されます
  • 次で規定されています: EIP-2255 

対象ウォレットのバージョンで、未対応メソッドのエラーを処理してください。アカウントへの権限は RPC 接続とは別であり、署名やトランザクションの事前承認にはなりません。基本的な接続には次を使用します: eth_requestAccounts.

最終更新日