世博会套接字发射不工作,但正在工作
Posted
技术标签:
【中文标题】世博会套接字发射不工作,但正在工作【英文标题】:expo socket emit is not working but on is working 【发布时间】:2021-08-09 06:12:30 【问题描述】:任何人都知道为什么发出不工作?如果我点击按钮,它什么也不会发生。
这是我的前端代码:
import io from 'socket.io-client/dist/socket.io';
const socket = io('http://xxxxx:3000',
transports: ['websocket']
);
useEffect(() =>
socket.on('connect', () =>
setConnected(true);
console.log('user connected');
);
socket.on('getmessage', message =>
console.log(message);
);
);
...
<TouchableOpacity onPress=() => socket.emit('getmessage', chatMessage) style=padding: 4, borderRadius: 4, backgroundColor: 'red'>
<Text>Send</Text>
</TouchableOpacity>
这是我的后端代码:
const http = require('http');
const express = require('express');
const app = express();
const routes = require('./routes/index');
const cors = require('cors');
const server = http.createServer(app);
const io = require('socket.io')(server);
app.use(cors());
app.use(express.json());
app.use(routes);
io.on('getmessage', message =>
console.log(message);
);
io.on('connection', socket =>
console.log('a user connected');
);
server.listen(3000, () =>
console.log('Server listen');
);
.................................................. ..................................................... ..
【问题讨论】:
【参考方案1】:你能像下面这样改变你的服务器端并尝试一下吗:)
// ... your code
io.on('connection', socket =>
console.log('a user connected');
socket.on('getmessage', message =>
console.log(message);
);
);
【讨论】:
请考虑以下来自socket.io/get-started 的入门示例:) 很高兴我能提供帮助以上是关于世博会套接字发射不工作,但正在工作的主要内容,如果未能解决你的问题,请参考以下文章