안녕하세요
소켓 전송을 하려 하는데 오류가 뜹니다ㅠㅠ
chat.ejs
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.6.0/socket.io.js" integrity="sha512-rwu37NnL8piEGiFhe2c5j4GahN+gFsIn9k/0hkRY44iz0pc81tBNaUN56qF8X4fy+5pgAAgYi2C9FXdetne5sQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
<%- include('nav.html') %>
<h1 style="border-bottom:1px solid gray; ">채팅방</h1>
<button id ="send">보내기</button>
<script>
var soket = io();
$('#send').click(function(){
socket.emit('user-send', '안녕~~');
})
</script>
server.js
const express = require('express');
const app = express();
const http = require('http').createServer(app);
const { Server } = require("socket.io");
const io = new Server(http);
app.set('view engine','ejs');
app.use('/public', express.static('public'));
app.use(express.urlencoded({extended:true}));
const MongoCilent = require('mongodb').MongoClient;
app.use(express.static('views'));
const passport = require('passport');
const LocalStrategy = require('passport-local').Strategy;
const session = require('express-session');
io.on('connection',(socket)=>{
console.log('연결되었어요');
socket.on('user-send', function(data){
console.log(data)
});
});
app.get('/chat',(req,res)=>{
res.render('chat.ejs');
})
이렇게 했는데 오류로
Uncaught ReferenceError: socket is not defined
at HTMLButtonElement.<anonymous> (chat:128:13)
at HTMLButtonElement.dispatch (jquery-3.6.0.min.js:2:43064)
at v.handle (jquery-3.6.0.min.js:2:41048)
이렇게 뜹니다 무슨 문제가 있는걸까요?