CORS
Last updated
Last updated
κ΅μ°¨ μΆμ²(Cross Origin) κ° λ¦¬μμ€ κ³΅μ (Resource Sharing)μ μ½μ
μλ‘ λ€λ₯Έ Originμ κ°λ μ ν리μΌμ΄μ
κ°μ 리μμ€λ₯Ό 곡μ νκ³ μ ν λ μ€μν΄μΌ ν κ·μ½λ€μ CORS Policy
λΌκ³ ν¨
ν리νλΌμ΄νΈ μμ² (OPTIONS) μΌλ‘ μ§μνλ λ©μλ, ν€λ μ 보 νμΈ
μΈ κ²½μ°μλ μλ΅λ¨
μλλ μ΄ OPTIONS μμ²μμ μ¬μ©λλ ν€λλ€
Access-Control-Request-Method
μ¬μ© κ°λ₯ν λ©μλμΈμ§λ₯Ό μλ΅λ°κΈ° μν ν€λ
Access-Control-Request-Headers
μ¬μ© κ°λ₯ν ν€λμΈμ§λ₯Ό μλ΅λ°κΈ° μν ν€λ
ν리νλΌμ΄νΈ μμ²μ κΈ°λ°μΌλ‘ μ€μ μμ² μ λ¬
μ ν리μΌμ΄μ
μ ꡬνν λμλ μ€μ μμ²λ§μ μμ±νλ©°, Fetch
λ±μ μμ² λ©μλκ° ν리νλΌμ΄νΈλ₯Ό μλμΌλ‘ νΈλ¦¬κ±°
ν리νλΌμ΄νΈ(OPTION) μμ²μ λν΄μλ λ€μμ ν€λλ₯Ό ν΅ν΄ μ§μνλ λ©μλ, ν€λ μ 보 μ 곡
Allows
λλ Access-Control-Allow-Methods
Allow-Headers
λλ Access-Control-Allow-Headers
νμ©λ ν΄λΌμ΄μΈνΈμΈμ§ κ²μ¦
νμ©λ ν€λλΌλ©΄ Access-Control-Allow-Origin
ν€λλ₯Ό ν¬ν¨ν μλ΅ μ 곡
ν리νλΌμ΄νΈ, μ€μ μμ² λͺ¨λ μ΄ κ³Όμ (ν€λ)μ΄ μꡬλ¨
ν΄λΌμ΄μΈνΈ β ν리νλΌμ΄νΈ μμ²
μλ² β ν리νλΌμ΄νΈ μμ²μ λν μλ΅ (μ¬μ© κ°λ₯ λ©μλ, ν€λ μ 보 ν¬ν¨)
ν΄λΌμ΄μΈνΈ β μλ²μ μλ΅ κΈ°λ°μΌλ‘ μ€μ μμ² λ©μμ§ μμ±
μλ² β μ€μ μμ²μ λν μλ΅
ν΄λΌμ΄μΈνΈ β withCredentials: true
μ΄κ±Έ ν¬ν¨ν΄μΌ ν€λμ μΏ ν€ μ 보λ₯Ό λ£μ
μλ² β Access-Control-Allow-Credentials: true
λΈλΌμ°μ λ μΈμ¦ μμ²μ λν μλ΅ ν€λμ μ΄κ² μμΌλ©΄ νκΈ°
μλ²μμ μ΄ ν€λλ₯Ό ν¬ν¨νκ³ μ νλ©΄ Allow-Origin
μ μμΌλμΉ΄λλ‘ μ€μ λΆκ°
CORSλ κΈ°λ³Έμ μΌλ‘ 무쑰건 μμ²μ origin μ 보
κ° μμ΄μΌ νμ©ν΄μ€ μ μμ
리μμ€λ₯Ό μμ²ν μ€λ¦¬μ§μ΄ νμ©λ μ€λ¦¬μ§μΈμ§ μλμ§ νλ³ν΄μΌ νλ―λ‘ λΉμ°ν¨
μΈ κ²½μ°μλ μλ΅λ¨ (μ€μνλ―λ‘ ν λ² λ κ°μ‘°)
[MDN]