Socket.io: μš”μ²­μ˜ 자격 증λͺ… λͺ¨λ“œκ°€ '포함'인 경우 μ‘λ‹΅μ˜ 'Access-Control-Allow-Origin' 헀더 값은 μ™€μΌλ“œμΉ΄λ“œ '*'κ°€ μ•„λ‹ˆμ–΄μ•Ό ν•©λ‹ˆλ‹€. λ”°λΌμ„œ Origin 'http://localhost:3000'은 μ•‘μ„ΈμŠ€κ°€ ν—ˆμš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. XMLHttpRequest에 μ˜ν•΄ μ‹œμž‘λœ μš”μ²­μ˜ 자격 증λͺ… λͺ¨λ“œλŠ” withCredentials 속성에 μ˜ν•΄ μ œμ–΄λ©λ‹ˆλ‹€.

에 λ§Œλ“  2018λ…„ 09μ›” 03일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: socketio/socket.io

λͺ¨λ‘λ“€ μ•ˆλ…•,
λ‚˜λŠ” socket.ioλ₯Ό 처음 μ‚¬μš©ν•©λ‹ˆλ‹€. λ‚΄ NodeJs/Express μ„œλ²„μ— λ‹€μŒ μ½”λ“œκ°€ μžˆμŠ΅λ‹ˆλ‹€.

const http = require('http');
const socketIo = require('socket.io');
const app = express();
const server = http.createServer(app);
const io = socketIo(server);

io.on('connection', socket => {
  console.log('New client connected');
  socket.on('disconnect', () => console.log('Client disconnected'));
  socket.emit('FromAPI', 'hello');
});
//My port here is 8848
app.listen(app.get('port'), () => {
  logger.log('info', `Server started at :${app.get('port')}`);
});

그리고 Client React μ•±μ˜ λ‹€μŒ μ½”λ“œμ™€ λ‚΄ λ°˜μ‘ 앱은 포트 3000μ—μ„œ http://localhost :3000으둜 ν˜ΈμŠ€νŒ…λ©λ‹ˆλ‹€.

import socketIO from 'socket.io-client';
componentDidMount() {
    const endPoint = 'http://127.0.0.1:8848';
    const socket = socketIO(endPoint);
    socket.on('FromAPI', data => console.log(data));

  }

이 μ½”λ“œλ₯Ό μ‚¬μš©ν•˜λ©΄ λΈŒλΌμš°μ € μ½˜μ†”μ—μ„œ λ‹€μŒ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.
polling-xhr.js:263 GET http://127.0.0.1 :8848/socket.io/?EIO=3&transport=polling&t=MMT-4kl 405(ν—ˆμš©λ˜μ§€ μ•ŠλŠ” 방법)
http://127.0.0.1 λ‘œλ“œ μ‹€νŒ¨:8848/socket.io/?EIO=3&transport=polling&t=MMT-Aso: μ‘λ‹΅μ˜ 'Access-Control-Allow-Origin' 헀더 값은 μ™€μΌλ“œμΉ΄λ“œκ°€ μ•„λ‹ˆμ–΄μ•Ό ν•©λ‹ˆλ‹€. μš”μ²­μ˜ 자격 증λͺ… λͺ¨λ“œκ°€ '포함'인 경우 '*'μž…λ‹ˆλ‹€. λ”°λΌμ„œ Origin ' http://localhost :3000'은 μ•‘μ„ΈμŠ€κ°€ ν—ˆμš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. XMLHttpRequest에 μ˜ν•΄ μ‹œμž‘λœ μš”μ²­μ˜ 자격 증λͺ… λͺ¨λ“œλŠ” withCredentials 속성에 μ˜ν•΄ μ œμ–΄λ©λ‹ˆλ‹€.

λˆ„κ΅¬λ“ μ§€μ΄ 문제λ₯Ό λ„μ™€μ£Όμ„Έμš”.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

κ·Έλž˜μ„œ 폐쇄적이고 해결책이 μ—†μŠ΅λ‹ˆκΉŒ? :(

λͺ¨λ“  3 λŒ“κΈ€

κ·Έλž˜μ„œ 폐쇄적이고 해결책이 μ—†μŠ΅λ‹ˆκΉŒ? :(

같은 문제인데 해결방법을 λͺ»μ°ΎμœΌμ‹œλ„€μš”..

같은 문제 ν•΄κ²° 방법 μ—†μŒ

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰