μ΄μ λ²μ μ socket.ioλ μ μλνμ§λ§ μ΅μ 릴리μ€λ μλ€λ‘ μ°κ²°νλ €κ³ ν λ CORS μ€λ₯λ₯Ό νμν©λλ€. λν CORS λ―Έλ€μ¨μ΄λ₯Ό μλ²μ μΆκ°νμ§λ§ μλνμ§ μμ΅λλ€. κ·Έλ¬λ μ΄μ λ²μ μ μμΌμΌλ‘ λ€μ μ ννλ©΄ μ μλν©λλ€.
μλ
νμΈμ. 3.0 릴리μ€μμ λ³κ²½λ μ¬νμ΄ λ¬Έμμ λ°μλμ§ μμκΈ° λλ¬Έμ΄λΌκ³ μκ°ν©λλ€.
μ΄ λ§ν¬ https://socket.io/docs/migrating-from-2-x-to-3-0/ , CORS μ²λ¦¬ μΉμ
μ μ°Έμ‘°νμμμ€.
κ±°μ§λ§μ μ ν κ±°μμ. μ€λ λ°λ‘ socket.ioλ‘ νλ μ΄νκΈ° μμνκ³ λ°λ‘ λλ‘ λΈλ‘μ΄ μμ΅λλ€. 2.xλ‘ λ€μ΄ κ·Έλ μ΄λνμ§λ§ λ¬Έμμ λ²μ κ΄λ¦¬κ°μλ κ² κ°μ΅λλ€.
μλ νμΈμ! μ£μ‘ν©λλ€. λ¬Έμλ v3 μ©μΌλ‘ μ λ°μ΄νΈλλ μ€μ λλ€.
μ¬κΈ°μ CORSμ λν μΉμ μ μΆκ°νμ΅λλ€ : https://socket.io/docs/v3/handling-cors/
κ·Έκ²μ΄ μΆ©λΆν λͺ νν μ§ νμΈν΄ μ£Όμκ² μ΅λκΉ?
@darrachequesne κ°μ¬ν©λλ€, ν΄κ²°λμμ΅λλ€!
μ΄κ²μ glitch.me νλ‘μ νΈλ₯Ό κ°μ§ μ¬λλ€μκ² λ¬Έμ λ₯Ό μΌμΌν¬ μ μμ΅λλ€. v3μΌλ‘ μ κ·Έλ μ΄λ ν λ glitch.me νλ‘μ νΈκ° saifulshihab κ²μ μ€λ₯λ‘ μλ΅μ μμν©λλ€. κ·Έλ¬λ CORSλ glitch.me λ° AWSμ TOSμ μλ°°λλ©° νλ‘μ νΈκ° μ κ±°λ©λλ€. CORSλ₯Ό ν¬ν¨νμ§ μκ³ v3 νλ μ μν¬λ₯Ό μ€νν μμλ λ°©λ²μ΄ μμ΅λκΉ?
CORSκ° λ¬΄μμ΄λ©° μ λ¬Έμ μΈμ§ μμ ν μ΄ν΄νμ§ λͺ»ν©λλ€. λλ λ¨μ§ κ³νμ μ§λ κ²λΏμ λλ€.
μλ νμΈμ @quindo -CORSλ₯Ό νμ±ννλ κ²μ΄ Glitchμ TOSμ μλ°°λμ§ μμμ λͺ νννκ³ μΆμμ΅λλ€. μΌλΆ μ¬μ©μλ μ μμ μΈ μ΄μ λ‘ CORS-anywhereμ κ°μ νΉμ npm ν¨ν€μ§λ₯Ό μ¬μ©νμΌλ©° μ΄λ TOSμ μλ°°λ©λλ€.
λ¬Έμ μ μ§λ©΄ ν μ¬λλ€μ μν΄
// server-side
const io = require("socket.io")(httpServer, {
cors: {
origin: "https://example.com",
methods: ["GET", "POST"],
allowedHeaders: ["my-custom-header"],
credentials: true
}
});
// client-side
const io = require("socket.io-client");
const socket = io("https://api.example.com", {
withCredentials: true,
extraHeaders: {
"my-custom-header": "abcd"
}
});
μ΄μ λ«μ μ μλ€κ³ μκ°ν©λλ€. νμν κ²½μ° λ€μμ¬μμμ€.
κ°μ₯ μ μ©ν λκΈ
μλ νμΈμ! μ£μ‘ν©λλ€. λ¬Έμλ v3 μ©μΌλ‘ μ λ°μ΄νΈλλ μ€μ λλ€.
μ¬κΈ°μ CORSμ λν μΉμ μ μΆκ°νμ΅λλ€ : https://socket.io/docs/v3/handling-cors/
κ·Έκ²μ΄ μΆ©λΆν λͺ νν μ§ νμΈν΄ μ£Όμκ² μ΅λκΉ?