bn.getMpcProvider
▸ getMpcProvider(): Web3Provider
description
The api to get web3 provider
remark
supported jssdk >= 4.0.0
example
//eg1: get web3 provider and then request with method
bn.getMpcProvider()
.request({
method: 'eth_requestAccounts'
})
.then(accounts => {
console.log('accounts', accounts)
})
Returns
Web3Provider
Class: Web3Provider
Name | Type | Description |
---|---|---|
idMapping | default | |
rpc | default | |
callbacks | Map <number , JsonRpcCallback <JsonRpcCallbackResponse >> | |
wrapResults | Map <number , boolean > | |
isDebug | undefined | boolean | |
address | string [] = [] | |
ready | boolean = false | |
chainId? | string | The chain ID of the currently connected Ethereum chain.; See chainId.network for more information. |
_rpcHooks | RPCHooks | |
isProcessingRequestAccounts | boolean = false | |
ProviderRpcError | typeof ProviderRpcError | |
setChainId | (value? ): void | |
setAddress | (value? ): void | |
setRpc | (rpcUrl , rpcHooks? ): void | |
request | (payload ): Promise <EthJsonRpc [T ]["response" ]["result" ]> | |
isConnected | (): boolean | deprecated Listen to "connect" event instead. |
enable | (): Promise <Maybe <string []>> | deprecated Use request({ method: "eth_requestAccounts" }) instead. |
send | (payload ): EthJsonRpc [T ]["response" ] | deprecated Use request() method instead. |
sendAsync | (payload , callback ): void | deprecated Use request() method instead. |
_request | (payload , wrapResult? ): Promise <undefined | null | string | boolean | object | JsonRpcSuccess <UnknownResponse > | JsonRpcSuccess <string []> | JsonRpcSuccess <string > | JsonRpcSuccess <boolean > | JsonRpcSuccess <null > | JsonRpcSuccess <never > | ( (undefined | string | object )[] | ( (undefined | string )[]> | |
eth_accounts | (): string [] | |
eth_coinbase | (): undefined | string | |
net_version | (): null | string | |
eth_chainId | (): null | string | |
eth_sign | (payload ): void | |
personal_sign | (payload ): void | |
eth_signTypedData | (payload , version ): void | |
getAccounts | (): Promise <string []> | |
requestAccounts | (): Promise <string []> | Metamask 行為描述 |
比照流程:https://github.com/MetaMask/metamask-extension/blob/develop/app/scripts/controllers/permissions/permissionsMethodMiddleware.js | ||
eth_sendTransaction | (payload ): Promise <Maybe <string >> | |
populateTransaction | (payload ): Promise <EthTransaction > | populate the transaction params |
eth_sendRawTransaction | (payload ): void | |
wallet_watchAsset | (payload ): void | |
wallet_addEthereumChain | (payload ): Promise <Maybe <null >> | |
wallet_switchEthereumChain | (payload ): Promise <Maybe <null >> | |
postMessage | (action , id , object ): void | |
_isJsonRpc | (result ): result is JsonRpcSuccess<UnknownResponse> | |
sendResponse | (id , result ): void | |
sendError | (id , error ): void |
setChainId
▸ setChainId(value?
): void
Parameters
Name | Type |
---|---|
value? | string | number |
Returns
void
setAddress
▸ setAddress(value?
): void
Parameters
Name | Type | Default value |
---|---|---|
value | string [] | [] |
Returns
void
setRpc
▸ Private
setRpc(rpcUrl
, rpcHooks?
): void
Parameters
Name | Type |
---|---|
rpcUrl | undefined | string |
rpcHooks? | RPCHooks |
Returns
void