这是我的服务器端代码
const express = require('express');
const app = express();
const server = require('http').createServer(app);
const io = require('socket.io')(server);
io.on('connection', (socket) => {
console.log('connected');
socket.on('message', (msg) => {
console.log(msg);
});
});
const PORT = 3000;
server.listen(PORT, () => {
console.log(`Server is running on port ${PORT}.`);
});
这是我的客户端 React Native组件
import React, {useEffect} from 'react';
import {View, Text} from 'react-native';
import clientio from 'socket.io-client';
const ENDPOINT = 'http://127.0.0.1:3000';
export default () => {
useEffect(() => {
const socket = clientio(ENDPOINT);
console.log(socket.connected);
socket.emit('message', {message: 'hello'});
}, []);
return (
<View>
<Text> Hello </Text>
</View>
);
};
useEffect中的console.log总是注销“ false” +我在服务器端没有任何日志。
尝试了不同的端口,将uri更改为“ http:// localhost:3000”
我正在使用软件包:
“ socket.io”:NodeJS应用中的“ 2.3.0”
“ socket.io-client”:“ 2.3.0”,在React应用中