데이터베이스에서 실시간 업데이트를 받으려면 socket.io에서 사용하고 있습니다. 여기 내 코드입니다 :소켓 io를 사용하여 업데이트를 얻으려면
var q = "SELECT * FROM notifications";
db.query(q, function(err, rows, fields) {
if(rows[0]) {
io.sockets.emit('newNotifications', rows[0]);
}
});
의 작업,하지만 난 WHERE userid = "+myuserid+"
이 어떻게 할 수있는 질문을 추가 할? 나는이 코드로 이것을 시도했다 :
socket.on('connect', function() {
socket.send({"myuserid":"1"});
console.log('connected');
});
감사합니다.
도움을 주셔서 감사하지만 사용자 ID var이 정의 된 방법은 무엇입니까? 그리고 어떤 socket.send가 필요합니까? – user3059048
userid를 얻는 방법은 코드와 검색 방법에 달려 있습니다. 나는 당신이 사용자에 대해 어떤 종류의 인증을하고 있다고 가정하고있다. 일반적으로 사용자를 인증 할 때 검색하는 데이터 조각 중 하나입니다. 원래 예제에서 보여주는 것처럼 클라이언트에서 해당 사용자 ID를 단순히 전달할 수 없거나 연결된 사용자가 다른 사용자의 사용자 ID를 전달하여 알림을받을 수있는 취약점에 직접 노출 될 수 있습니다. –
socket.emit 코드는 연결된 소켓에 알림을 보냅니다. 이 경우 쿼리 및 사용자 ID가 연결된 소켓입니다. –