तो सबसे पहले मैं यह कहना चाहूंगा कि मैंने कई अन्य उत्तरों को देखा है जो इसी तरह के प्रश्नों के लिए दिए गए थे, लेकिन मेरे लिए किसी ने भी काम नहीं किया।

मेरा सेटअप एक नोड जेएस सर्वर और एक प्रतिक्रिया जेएस क्लाइंट है। और मुझे केवल एक बुनियादी सेटअप करने में परेशानी हो रही है। कोई भी जो यहां मेरी मदद करेगा, मैं वास्तव में सराहना करता हूं।

और क्लाइंट कोड पर भी मैंने http http://localhost:6000 के साथ और बिना localhost:6000 के स्थानीयहोस्ट से सर्वर यूआरएल के लिए विभिन्न विकल्पों के माध्यम से वैकल्पिक किया है। आईपी ​​​​पते के लिए वही।

नोड जेएस सर्वर कोड

const express = require('express');
const app = express();
const users = require("./routes/api/users");
const profile = require("./routes/api/profile");
const project = require("./routes/api/project");
const auth = require("./routes/api/auth");
const email = require("./routes/api/email");
app.use(express.static(__dirname + '/public'));

const server = require('http').createServer(app);
const io = require('socket.io')(server);

io.on('connection', (socket)=> {
  console.log("user connected")

  socket.on('SEND_MESSAGE', function(data){
    console.log("message received")
    io.emit('RECEIVE_MESSAGE', data);
})
});

//*** Start of Routes ***//

app.use((req, res, next) => {
  res.setHeader("Access-Control-Allow-Origin", "http://localhost:6000");
  res.setHeader("Access-Control-Allow-Credentials", "true");
  next();
})
app.use("/api/users", users);
app.use("/api/profile", profile);
app.use("/api/auth", auth);
app.use("/api/project", project);
app.use("/api/email", email);

//*** End of Routes ***//
const port = 6000;

server.listen(port, () => {
  console.log(`Server Running at ${port}`);
});

प्रतिक्रिया जेएस क्लाइंट कोड

import React,{useEffect,useState,useRef} from 'react';
import io from "socket.io-client";

class App extends React.Component {
    constructor(props){
        super(props);

        this.state = {
            username: 'name',
            message: 'hello world',
            messages: []
        };

        this.serverUrl = '127.0.0.1:6000';
        this.socket = io(this.serverUrl, {reconnect: true});

        this.setupSocket();
    }

    setupSocket() {
        this.socket.on('connection', (data) => {
            console.log(`Connected: ${data}`);
        });
    }



    render(){
        return(<p>Hello<p>)
        }
}
export default App
1
Cyborg_Patrick 31 जुलाई 2020, 08:29

1 उत्तर

सबसे बढ़िया उत्तर

आपके सॉकेट सर्वर में समस्या हो सकती है आप अपना पोर्ट बदल सकते हैं और जांच सकते हैं कि यह काम कर रहा है या नहीं

1
Dishant Desai 31 जुलाई 2020, 06:33