Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
最近のweb3.js事情 / bc.tokyo-19
odanado
May 24, 2019
Programming
2
270
最近のweb3.js事情 / bc.tokyo-19
odanado
May 24, 2019
Tweet
Share
More Decks by odanado
See All by odanado
odanado
4
700
odanado
0
100
odanado
0
210
odanado
0
73
odanado
1
1.6k
odanado
10
48k
odanado
1
4.7k
odanado
0
76
odanado
3
4.4k
Other Decks in Programming
See All in Programming
tooppoo
1
460
orgachem
1
220
palkan
2
350
hyodol2513
2
1.1k
bosshawk
1
270
ganchan11
0
160
chatii
2
290
andpad
0
380
kazuhei0108
3
950
bamboooo
1
130
marcoow
0
160
kulkarniankita09
0
270
Featured
See All Featured
kneath
220
15k
pauljervisheath
195
15k
bryan
99
11k
sugarenia
233
880k
cherdarchuk
72
270k
myddelton
109
11k
shpigford
166
19k
jrom
116
7.2k
zakiwarfel
88
3.4k
jcasabona
8
590
schacon
147
6.7k
addyosmani
312
21k
Transcript
最近のweb3.js事情 1 blockchain.tokyo#19 @odan3240
自己紹介 • Twitter: @odan3240 • ソフトウェアエンジニア ◦ フロントエンド ◦ AWS
◦ ブロックチェーン • 会社: モバイルファクトリー ◦ チーム: ブロックチェーンチーム ◦ DApssを身近にするUniqys Projectをやっている 2
web3.jsとは • Ethereum JavaScript API • Ethereumのノードと通信する君 ◦ JSON-RPCで会話 ▪
https://github.com/ethereum/wiki/wiki/JSON-RPC 3 トランザクションを送信する例
web3.jsの仕組み • 大きく分けて2つ ◦ JSON RPCの呼び出し ▪ provider という ▪
dapp ブラウザはこの機能を提供 ◦ JSON RPCの機能をJSの関数として提供 4
web3.js v1.0.0-beta.x • 2017年の7月頃から開発されている(?) • 最新は v1.0.0-beta.55 • beta版でバグがあることも... ◦
blockchain.tokyo#15のecouffes_さんのスライド 5
callback -> promise • JSON RPCの実行結果を受け取るのに callback関数を渡していた ◦ JavaScriptの昔のやり方 ◦
0.20.xまで現役 • v1.0.0-beta.xでは結果を promiseとして返すようになった 6
EIP 1193 • EIP 1193: Ethereum Provider API • provider.sendの
新しいinterfaceの提案を含んでいる • 旧 • 新 7
TypeScript対応 • v1.0.0-beta.38辺りから 型定義ファイルが提供され始めた ◦ 嬉しい • 単にJavaScriptを書いている時でもVS Codeで 関数や引数がサジェストされる
• またに間違っている... 8
Module API • v1.0.0-beta.54から入った ◦ https://web3js.readthedocs.io/en/1.0/web3-module.html • 独自のWeb3 モジュールを実装するためのAPI •
web3.ethなどの内部モジュールは すべてこのModule APIを使って書き直された • 使ってみた ◦ odanado/js-eth-personal-sign-examples-clone 9