1
Compound.js (node.js/Express.js에 빌드 됨)를 사용하는 새 프로젝트에 대해 Socket.IO를 테스트하고 있지만 문제. 내가 일하는 기초를 얻을 관리했습니다 다음과 같은 메시지가 잘 작동 :Socket.IO를 사용하여 Compound.js 내의 개체 수 표시
서버 측 JS (ApplicationName을/설정/초기화/socketio.js) : (
var sio = require('socket.io');
var http = require('http');
var activeClients = 0;
module.exports = function (compound) {
var app = compound.app;
var server = http.createServer(app);
compound.server = server;
var io = compound.io = sio.listen(server);
io.sockets.on('connection', function (socket) {
activeClients +=1;
var connections = setInterval(function() {
socket.emit('news', { clients: activeClients });
}, 1000);
socket.on('disconnect', function() {
activeClients -= 1;
io.sockets.emit('user disconnected');
clearInterval(connections);
});
});
}
프런트 엔드 JS를 가능 ApplicationName/public/index.html) :
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('http://localhost');
function msgReceived(msg){
$clientCounter.html(msg.posts);
}
$(document).ready(function() {
$clientCounter = $("#client_count");
socket.on('news', function (data) {
msgReceived(data);
socket.emit('my other event', { my: 'data' });
});
});
</script>
내가 지금하려는 것은 서버에서 만들어진 게시물 수를 얻는 것입니다. 나는 포스트 메소드, 컨트롤러 및 뷰를 생성하기 위해 기본 스캐 폴드를 사용했습니다.
이제 총 게시물 수를 찾고 해당 값을 서버 측 JS로 전달하려면 어떻게해야합니까?
에서 폴링 될 수있는 특정 메시지를 작성합니다. 게시물 모델 (블로그 게시물 생각)이 있고 프런트 엔드에 표시 할 게시물 수를 계산하여 누군가가 새 게시물을 만들면 새로운 게시물 수가 모든 사용자에게 적용되도록합니다. 셀 수있는 계산 방법이 도움이 될지 모르겠습니다. –
당신이 옳습니다. 그러나 코드가 어떻게 든 오도 될 수 있습니다. 이 모든 것은 socket.io와는 아무 상관이 없습니까? 실제로 블로그 게시물을 저장하는 방법을 모른 채로 ... 당신이 확실히 사용하고있는 퍼시스턴스 저장소에서 단순히 그들을 검색하고 단순히 카운트 한 다음이 숫자를 내보내는 방법은 무엇입니까? – robkuz
글쎄, 실제 질문 자체입니다. 마지막 줄, "이제 총 게시물 수를 찾아 서버 측 JS로 전달하는 방법은 무엇입니까?" 양측 모두를 파악할 수는 없으므로 질문을 던집니다. –