【发布时间】:2020-07-24 03:37:19
【问题描述】:
我正在尝试在 nodejs 和 react-native 之间建立 websocket 连接。但不幸的是,它不起作用。
问题是客户端没有通过套接字与服务器连接。
这里是 nodejs(服务器端)代码
const express = require('express');
const app = express();
var server = app.listen(3000, () => console.log('server connected'))
const io = require("socket.io")(server)
io.on("connect", (socket) => {
console.log("user connected");
socket.on("chat message", mssg => {
console.log(mssg);
io.emit("chat message", mssg)
})
})
app.get('/', (req, res) => {
res.send("Hey! u are connected to server");
})
这里是 react-native(客户端)代码
import React from 'react'
import { Button } from 'react-native'
import io from 'socket.io-client'
export default class extends React.Component {
constructor(props) {
super(props);
}
componentDidMount() {
this.socket = io("http://localhost:3000");
this.socket.on('connect', () => console.log("connected"))
this.socket.on("chat message", mssg => {
console.log("mssg recieved in client:", mssg)
})
}
render() {
return <Button title="click to send message" onPress={() => {
this.socket.emit("chat message", "anshika this side")
}
} />
}
}
使用的库:react-native 版本:0.62.1,socket.io-client 版本:2.3.0(客户端),socket.io 版本:2.3.0(服务器端) )
【问题讨论】:
标签: node.js react-native sockets