socket.io-client在生产服务器上无法正常工作

时间:2019-05-24 20:47:24

标签: react-native websocket socket.io nodejs-server

我正在后端的react-native,nodejs服务器上构建一个聊天应用程序。该应用程序在本地计算机上运行良好,但在生产后无法运行(远程服务器Linux)。我使用共享服务器托管我的网站。使用nodejs服务器和never软件包“永久”只是为了连续运行nodejs服务器。

我尝试将react-native版本更改为较低版本,将socket.io-client版本更改为2.1.1,再更改为2.0.4,然后尝试将socke.io的实例放置在componentDidMount上,并从互联网上放置了很多其他版本,但没有运气,

///这是我在本机中做出的反应,它在本地工作得很好

const url='https://www.mywebsite.com'
window.navigator.userAgent='react-native';
import io from 'socket.io-client';
export default class Chat extends Component {
   constructor(props){
      super(props);
      this.state={
        messages:[]
      }
   }
   render(){
    return(
     <View>
         {this.state.messages.map((message)=>
          <Text>{message.message}</Text>
         )}
     </View>
    )
   }
}
//here is my code at nodejs server
var express = require('express');
var app = express();
var jwt=require('jsonwebtoken');
var fs = require('fs');
var path=require('path');
var router=require('./router/main');
var bodyParser = require('body-parser');
var http = require('http').Server(app);
var io = require("socket.io")(http)
var socket=require('./socket/socket.js')(io);
http.listen(port, function(){
        console.log('The server yourhelplab.com is running...');
 });


//socket.js file at nodejs server
   module.exports = function(io) {
        io.on('connection', function (socket) {  
           socket.on('Echat', function (data) {
              io.sockets.in(data.roomId).emit('Echat',dataInfo);
           })
         })
    }

使用nodejs将本地文件上传到远程服务器linux服务器后,没有出现错误,但也没有消息返回到我的手机。 一切都可以在本地计算机上正常运行,但不能在生产服务器上运行,我不知道为什么。 请任何人帮我。谢谢您的帮助。

0 个答案:

没有答案