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