Socket.io-client: Node js - Socket.io-client๊ฐ€ socket.io ์„œ๋ฒ„์— ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2015๋…„ 03์›” 17์ผ  ยท  7์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: socketio/socket.io-client

๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ socket.io-client์— ์—ฐ๊ฒฐํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์„ฌ๊ธฐ๋Š” ์‚ฌ๋žŒ:

// ๋กœ๋“œ ์š”๊ตฌ ์‚ฌํ•ญ
var http = ์š”๊ตฌ('http'),
io = ํ•„์š”('์†Œ์ผ“.io');

// ์„œ๋ฒ„ ๋ฐ ์†Œ์ผ“ ์ƒ์„ฑ
var ์„œ๋ฒ„ = http.createServer(ํ•จ์ˆ˜(์š”์ฒญ, ํ•ด์ƒ๋„){

// Send HTML headers and message
res.writeHead(404, {'Content-Type': 'text/html'});
res.end('<h1>Aw, snap! 404</h1>');

});
server.listen(8080);
io = io.listen(์„œ๋ฒ„);

// ์—ฐ๊ฒฐ ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€
io.sockets.on('์—ฐ๊ฒฐ', ๊ธฐ๋Šฅ(์†Œ์ผ“) {

console.log('Client connected.');

// Disconnect listener
socket.on('disconnect', function() {
    console.log('Client disconnected.');
});

});

๊ณ ๊ฐ:

console.log('1');

// ์„œ๋ฒ„์— ์ ‘์†
var io = require('socket.io-client')
var ์†Œ์ผ“ = io.connect('localhost:8080', {์žฌ์—ฐ๊ฒฐ: true});

console.log('2');

// ์—ฐ๊ฒฐ ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€
socket.on('์—ฐ๊ฒฐ', ๊ธฐ๋Šฅ(์†Œ์ผ“) {
console.log('์—ฐ๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค!');
});

console.log('3');

์—ฐ๊ฒฐ๋œ ์ฝ˜์†” ๋กœ๊ทธ ๋˜๋Š” ํด๋ผ์ด์–ธํŠธ ์—ฐ๊ฒฐ ์ฝ˜์†” ๋กœ๊ทธ๊ฐ€ ํ‘œ์‹œ๋˜์ง€ ์•Š๊ณ  ์ด์œ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค! ์ฝ”๋“œ ์ƒ˜ํ”Œ์€ ๊ฒŒ์‹œ๋œ ๋‹ค๋ฅธ ์งˆ๋ฌธ์—์„œ ๊ฐ€์ ธ์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค. Link and I don't see any solution to the problem...

http://stackoverflow.com/questions/29108594/node-js-socket-io-client-is-not-connecting-to-socket-io-server

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

localhost์—์„œ 127.0.0.1๋กœ ๋ณ€๊ฒฝํ–ˆ๋Š”๋ฐ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  7 ๋Œ“๊ธ€

// ์„œ๋ฒ„์— ์ ‘์†
var io = require('socket.io-client')
var ์†Œ์ผ“ = io.connect('localhost:8080', {์žฌ์—ฐ๊ฒฐ: true});

์ด๋ ‡๊ฒŒ ์‚ฌ์šฉ

// ์„œ๋ฒ„์— ์ ‘์†
var io = require('socket.io-client')
var ์†Œ์ผ“ = io.connect('http://localhost:8080', {์žฌ์—ฐ๊ฒฐ: true});

๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ์ค„์„ ์ถ”๊ฐ€ํ•œ ํ›„์—๋„ ์—ฐ๊ฒฐ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

var io = require('socket.io-client')
var ์†Œ์ผ“ = io.connect('http://localhost:8080', {์žฌ์—ฐ๊ฒฐ: true});

๊ฐ™์€ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๋‚˜์—๊ฒŒ๋„ ํšจ๊ณผ๊ฐ€ ์žˆ์„๊นŒ...

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์œผ๋ฉฐ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

localhost์—์„œ 127.0.0.1๋กœ ๋ณ€๊ฒฝํ–ˆ๋Š”๋ฐ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

localhost์—์„œ 127.0.0.1๋กœ ๋ณ€๊ฒฝํ–ˆ๋Š”๋ฐ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ์€ ๋‚˜๋ฅผ ์œ„ํ•ด ์ž‘๋™ํ•˜์ง€ ์•Š์•˜๋‹ค.

๋ฏธ๋ž˜์˜ ๋…์ž๋ฅผ ์œ„ํ•ด ๋ช…์‹œ์ ์œผ๋กœ ํ”„๋กœํ† ์ฝœ์„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(Node.js ํ”„๋กœ์„ธ์Šค์—๋Š” ํ”„๋กœํ† ์ฝœ์„ ์ถ”๋ก ํ•  ์ˆ˜ ์žˆ๋Š” window.location ๊ฐœ์ฒด๊ฐ€ ์—†์œผ๋ฏ€๋กœ ์—ฌ๊ธฐ ์—์„œ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ˆ˜ํ–‰๋จ).

// does not work
io.connect("localhost:8080");
// does work
io.connect("http://localhost:8080");

์ฆ‰, ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์กฐ์šฉํžˆ ์‹คํŒจํ•˜๋Š” ๋Œ€์‹  ์˜ค๋ฅ˜๋ฅผ ๋ฐœ์ƒ์‹œ์ผœ์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰