Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ReactでWebsocket通信してみた.pdf
Search
riku0202
October 31, 2022
Programming
0
94
ReactでWebsocket通信してみた.pdf
riku0202
October 31, 2022
Tweet
Share
More Decks by riku0202
See All by riku0202
jestのspyOnでmockする際に詰まった話
riku0202
0
1.4k
Other Decks in Programming
See All in Programming
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
360
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
560
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1.1k
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
130
Оптимизируем производительность блока Казначейство
lamodatech
0
780
毎日13時間もかかるバッチ処理をたった3日で60%短縮するためにやったこと
sho_ssk_
1
430
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
140
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
890
Online-Dokumentation, die hilft: Strukturen, Prozesse, Tools
ahus1
0
100
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
690
Запуск 1С:УХ в крупном энтерпрайзе: мечта и реальность ПМа
lamodatech
0
780
オニオンアーキテクチャを使って、 Unityと.NETでコードを共有する
soi013
0
290
Featured
See All Featured
A Philosophy of Restraint
colly
203
16k
Automating Front-end Workflow
addyosmani
1366
200k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Docker and Python
trallard
43
3.2k
Scaling GitHub
holman
459
140k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Music & Morning Musume
bryan
46
6.2k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Transcript
ReactでWebSocket通信してみた
まずは簡単な挨拶 下島 陸 静岡県のweb系企業(2021年10月〜3月) 株式会社HRBrain (2022年4月〜現在) フロントエンド(React,TS) バックエンド(Go)
犬が大好き
アジェンダ 1. webSocketを触ろうと思った理由 2. webSocketとは? 3. 実際に作ってみた! 4. 使用したライブラリ 5.
Reactでどのように実装したか 6. 学び・得たもの
webSocketに興味を持ったきっかけ
webSocketに興味を持ったきっかけ
webSocketに興味を持ったきっかけ
webSocketに興味を持ったきっかけ
webSocketとは? • サーバーと双方向通信が可能なプロトコル • URIが ws://〜 またはwss://〜 ◦ 例:ws://localhost:3000 •
HTTPと比べて一回の通信量が比較的少ない WebSocket / WebRTCの技術紹介 https://www.slideshare.net/mawarimichi/websocketwebrtc
実際に作ってみた!
使用したライブラリ Socket.io 選んだ理由 • Microsoftなどの様々な大企業で使用されている • ドキュメントがわかりやすかった • starが多かった •
TSサポート
socketインスタンスが作られる webSocketが確立するまでロングポーリングしてくれる Reactでどのように実装したか 準備
State管理 Reactでどのように実装したか 描画部分
マウント時に`socket.on`というメソッドを実行することでハンドラーを登録 上の例ではサーバーから `new message` というEventNameを受け取り、 渡したコールバック関数が実行される Reactでどのように実装したか メッセージを受信
メッセージを送信 サーバーに`new message` というEventNameとともにメッセージを送信している Reactでどのように実装したか
学び・得たこと • socket.ioのおかげで簡単に実装できた 神! • webSocketについて知ることができた ◦ 自分の中でできることが広がった
フロントエンドエンジニアを積極採用募集中です
ありがとうございました!! @Riku_0202_