2016-06-18 3 views
0

나는 socket.io와 대화방을 작성하고 표현했습니다. 내 로컬 호스트에서 작동하지만 github에 업로드하면 작동하지 않습니다. 웹에서 많은 시간을 검색했지만 도움이되지 않는다면 아무 것도 발견하지 못했습니다. 환상적 일 것입니다.socket.io는 서버에서 작동하지 않지만 localhost에서는 작동하지 않습니다.

코드 : HTML (클라이언트)

<html> 
<head> 
    <title>Chat with your friend</title> 
    <style> 
    #chat{ 
     height:500px; 
    } 
    </style> 
</head> 
<body> 
    <div id="chat"></div> 
     <form id="send-message"> 
      <input size="35" id="message"></input> 
      <input type = "submit"></input> 
     </form> 

    <script src="http://code.jquery.com/jquery-latest.min.js"></script> 
    <script src="/socket.io/socket.io.js"></script> 
    <script> 
     jQuery(function($){ 
      var socket = io.connect(); 
      var $messageForm = $('#send-message'); 
      var $messageBox = $('#message'); 
      var $chat = $('#chat'); 


      $messageForm.submit(function(e){ 
       e.preventDefault(); 
       socket.emit('send message', $messageBox.val()); 
       $messageBox.val(''); 
      }); 

      socket.on('new message', function(data){ 
       $chat.append(data + "<br/>"); 
      }); 
     }); 
    </script> 
</body> 
</html> 

app.js (서버)

var express = require('express'), 
app = express(), 
server = require('http').createServer(app), 
io = require('socket.io').listen(server); 

    server.listen(8080); 

app.get('/', function(req, res){ 
res.sendfile(__dirname + '/index.html'); 
}); 

io.sockets.on('connection', function(socket){ 
socket.on('send message', function(data){ 
    io.sockets.emit('new message', data);  
}); 
}); 

package.json :

{ 
"name": "Chat", 
"version": "0.1.0", 
"priviate": true, 
"dependencies": { 
    "socket.io": "1.4.6", 
    "express": "4.14.0" 
    } 
} 
+0

"Github에 업로드"란 무슨 뜻입니까? 서버를 어디에서 실행하고 있습니까? – jfriend00

답변

0

은 GitHub의에서 코드를 넣는 것은 실행되지 않습니다 서버.

HyperDev을 원할 수도 있습니다.

무료로 노드 앱을 실행합니다. 그 시간의 100 %가되는 것을 믿지 마십시오.

코드를 project에 복사했습니다.

는 hyperdev에 가야하는 몇 가지 작은 변화했습니다 :

  • 이제 3000
  • 지금
  • 당신이 잘못 입력 HTTP가 아닌 HTTPS 소스에서 jQuery를로드 포트에서 수신 '개인' in package.json;)

실행중인 사이트를 보려면 왼쪽 상단의 '표시'를 클릭하십시오.

'홀리 부시', 왼쪽 상단 및 '리믹스 프로젝트'를 클릭하여이 파일을 자신의 프로젝트에 복사 할 수 있습니다. 그런 다음 변경 사항을 적용하면 서버가 새로 고쳐집니다.

노드 항목을 테스트하는 좋은 방법입니다.

관련 문제