Cài đặt package cần thiết
dĩ nhiên muốn dùng socket kết nối đến nodejs thì chúng ta cần có socket.io-client.
mình hay dùng socket client 2.3 nên cách install như sau: (khá ổn định nếu bạn dùng server socket 2.3 )
npm i socket.io-client@^2.3.0
Cách cài đặt version mới nhất như sau: (khuyến nghị không nên dùng nếu bạn chưa rành socket)
Sau khi có rồi mình có thể chạy lệnh init rồi 😄
Code react
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
/// soccket
import socketIOClient from "socket.io-client"
class App extends Component {
constructor(props) {
super(props)
const param = { query: 'token=' + jwt }
const socket = socketIOClient('http://localhost:3000', param )
console.log("connected ở đây không thành công đâu " + socket.connected);
socket.on('connect', function() {
console.log("Successfully connected!");
if(socket.connected){
console.log("connected ở đây sẽ thành công " + socket.connected);
}
})
.on('error', function(error) {
console.log(error, "có lỗi ")
})
}
render() {
return (
<div className="AppComponent" id="Application">
đây là app react
</div>
)
}
}
export default App;
if (document.getElementById('example')) {
ReactDOM.render(<App />, document.getElementById('example'));
}
server nodejs
ở server nodejs thì mình có đề cập ở bài này bạn có thể tham khảo: thêm socket io vào website có query param - yếu tố xác thực jwt
Kết quả