사내 VDI 환경에서 로컬 컴으로 메시지 복사 막혀있어서 node.js 챗 샘플 코드 주워다가 살짝 손봐서 메시지 전송 사용. 타이핑 줄이기 위한 꽁수.
// app.js
var app = require('express')();
var server = require('http').createServer(app);
var io = require('socket.io')(server);
app.get('/', function(req, res) {
res.sendFile(__dirname + '/index.html');
});
app.get('/log', function(req, res) {
res.sendFile(__dirname + '/log.html');
});
app.get('/jquery/jquery.js', function(req, res) {
res.sendfile(__dirname + '/node_modules/jquery/dist/jquery.min.js');
});
io.on('connection', function(socket) {
socket.on('sms', function(data) {
var msg = {
msg: data.msg
};
socket.broadcast.emit('sms', msg);
});
socket.on('forceDisconnect', function() {
socket.disconnect();
});
socket.on('disconnect', function() {
console.log('user disconnected');
});
});
server.listen(3000, function() {
console.log('Socket IO server listening on port 3000');
});
// index.html
<form>
<textarea rows="20" cols="100" id="msgForm"></textarea>
<button type="submit" class="btn btn-primary">Send</button>
</form>
<script src="/jquery/jquery.js"></script>
<script src="/socket.io/socket.io.js"></script>
<script>
$(function(){
var socket = io();
$("form").submit(function(e) {
e.preventDefault();
var $msgForm = $("#msgForm");
socket.emit("sms", { msg: $msgForm.val() });
$msgForm.val("");
});
});
</script>
// log.html
<script src="/jquery/jquery.js"></script>
<script src="/socket.io/socket.io.js"></script>
<script>
$(function(){
var socket = io();
socket.on("sms", function(data) {
console.log(data.msg);
});
});
'Slack 채널 정리' 카테고리의 다른 글
Java IDE 에서 semicolon 자동 추가 (0) | 2019.11.27 |
---|---|
윈도우에서 포트 사용 중인 프로그램 확인하는 방법 (0) | 2019.11.27 |
암달의 법칙(Amdahl's law) (0) | 2019.11.27 |
forEach 의 콜백함수에 param 넘기는 예 (0) | 2019.11.27 |
groovy - db, http (0) | 2019.11.27 |