Files
api/packages/rpc-core/README.md
T
Jaco Greeff b313614935 Pull in vuepress foir docs (as opposed to gitbook) (#742)
* Pull in latest @polkadot/dev, cleanup existing *.html

* Cleanups (old gitbook interfaces)

* Bump, WIP

* Ready for testing

* Update examples

* Include source

* Cleanup links

* Adjust links

* Add typedoc exclusions

* Default classes from class files

* Adjust imports

* Adjust config

* Re-add types split

* Update links to substrate interfaces

* Anchors for metadata

* Adjust links

* Restore HTML (to be deleted on CI)

* Bump deps

* Re-gen yarn.lock

* Remove a in links

* Adjust interfaces
2019-02-26 15:21:39 +01:00

72 lines
1.7 KiB
Markdown

# @polkadot/rpc-core
This library provides a clean wrapper around all the methods exposed by a Polkadot network client.
## Usage
Installation -
```
yarn add @polkadot/rpc-core
```
Initialisation -
```js
import Rpc from '@polkadot/rpc-core';
import WsProvider from '@polkadot/rpc-provider/ws';
const provider = new WsProvider('http://127.0.0.1:9944');
const api = new Rpc(provider);
```
Retrieving the block header object for a given block header hash (a 0x-prefixed hex string with length of 64) -
```js
api.chain
.getHeader('0x1234567890')
.then((header) => console.log(header))
.catch((error) => console.error(error));
```
Retrieving the best block number, parent hash, state root hash, extrinsics root hash, and digest (once-off) -
```js
api.chain
.getHead()
.then((headerHash) => {
return api.chain.getHeader(headerHash);
})
.then((header) => {
console.log(`best #${header.blockNumber.toString()}`);
console.log(`parentHash: ${header.parentHash.toString()}`);
console.log(`stateRoot: ${header.stateRoot.toString()}`);
console.log(`extrinsicsRoot: ${header.extrinsicsRoot.toString()}`);
console.log(`digest: ${header.digest.toString()}`);
})
.catch((error) => {
console.error('error:', error);
});
```
Retrieving best header via subscription -
```js
api.chain
.subscribeNewHead((header) => {
console.log(`best #${header.blockNumber}`);
})
.then((subscriptionId) => {
console.log(`subscriptionId: ${subscriptionId}`);
// id for the subscription, can unsubscribe via
// api.chain.subscribeNewHead.unsubscribe(subscriptionId);
})
.catch((error) => {
console.error('error subscribing:', error);
});
```
## Classes
[Classes](SUMMARY.md)