下面是我的反应本机组件和节点server.js代码,我试图连接到我的节点websocket后端.
我的反应代码与服务器在同一台计算机上运行.我在这里找到了很多不同的答案,而github,我都无法工作.
我也发现这个问题从来没有得到解答,这个问题有一个答案,我无法工作(一年前被问过)
我找到了这篇文章,并尝试根据这些指南修改我的代码,但这不起作用.
反应代码
import React from 'react';
import { StyleSheet, Text, View, Image } from 'react-native';
const io = require('socket.io-client/socket.io');
let socket = io('http://localhost:3000');
export default class App extends React.Component {
constructor(props) {
super(props);
console.log(socket);
}
render() {
return (
<View>
<Text>Websocket</Text>
</View>
);
}
}
Run Code Online (Sandbox Code Playgroud)
server.js
const express = require('express');
const http = require('http')
const socketio = require('socket.io');
const app = express();
const server = http.Server(app);
const websocket = socketio(server);
server.listen(3000, …Run Code Online (Sandbox Code Playgroud) io.connect()我localhost在iOS模拟器中指向方法时正在建立连接,所以一切都在那里工作.
但是当connect()方法指向我机器的LAN IP地址时,我无法在模拟器或设备上成功连接到服务器.
我现在非常难过这个,任何帮助将不胜感激谢谢.
我正在尝试使用来自本机的socket.io客户端.我在堆栈溢出中找到了几个答案,包括这一个:是否可以将React Native与socket.io结合使用 ,建议使用socket-io客户端并将navigator.userAgent设置为react-native.我尝试了它,它在我的机器人上不起作用,我也在youtube上发现了一个关于这个的视频,但是这个人让它在模拟器上工作,对我来说,一旦我使用远程调试它也能正常工作,因为它在浏览器上我猜.
我在https://www.npmjs.com/package/react-native-socketio上找到了一个项目,但它仍在进行中.那些不得不处理这个问题并设法找到解决方案的人可以给出一些指示吗?最后,我使用了客户端的react本地websockets和服务器端的npm ws库,它运行得很好,但我没有任何后备.