Spring/Spring Security

CORS (Cross-Origin Resource Sharing) 설정

원2 2021. 12. 13. 11:48
728x90
반응형

이렇게 서버간의 통신을 할때

정책상으로 해당서버에 접근을 못하게 차단을 해버리는 일이 발생한다.

 

그럴때, 해결법.

 

1. dispatcher-servlet 에 해당 설정을 한다.

 

Java class를 만드는 방법도 있고 따로 xml 파일을 만들어서 import 시키는 경우도 있는거 같은데

걍 간단하게 dispatcher-servlet에 이거만 넣자.

 

dispatcher-servlet.xml

이거만 넣어주면 끝이다 ㅇㅇ.ㄹㅇㅋㅋ

근데 이러면 안됨 세부설정도 해줘야한다.

    <mvc:cors>
        <mvc:mapping path="/**" allowed-origins="*"/>
    </mvc:cors>

    <!--&lt;!&ndash;  cors 설정(특정 도메인)  &ndash;&gt;-->
    <!--    <mvc:cors>-->
    <!--        <mvc:mapping path="/**" allowed-origins="http://localhost:8081"/>-->
    <!--    </mvc:cors>-->

    <!--&lt;!&ndash;  cors 설정(여러 특정 도메인)  &ndash;&gt;-->
    <!--    <mvc:cors>-->
    <!--        <mvc:mapping path="/**" allowed-origins="http://localhost:8081, http://localhost:8082"/>-->
    <!--    </mvc:cors>-->

mvc 설정이 안되있다면 추가해주자 (여기서 mvc만 긁어가면 된다.)

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/mvc
		http://www.springframework.org/schema/mvc/spring-mvc.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

 


 

2. @CrossOrigin 어노테이션을 장착

 

여기서는 @CrossOrigin 어노테이션을 장착하겠따.

 

매우 간단히 빨간 박스자리에 넣기만 해도 된다.

class 전체를 지정하겠다. 라면 class 위치

컨트롤러마다 지정하겠다. 라면 controller 자리에 어노테이션을 장착 시켜준다.

또한

처럼 상세하게 지정해 줄 수도 있다.

8081만 허용하겠다.  method는 get과 post만 허용한다.

라는 식의 조건을 지정해 줄 수 있다.


설정 후 접속이 잘 되었다.

 

그럼 ㅂㅂ

 

참고사이트

https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS

 

Cross-Origin Resource Sharing (CORS) - HTTP | MDN

Cross-Origin Resource Sharing (CORS) is an HTTP-header based mechanism that allows a server to indicate any origins (domain, scheme, or port) other than its own from which a browser should permit loading resources. CORS also relies on a mechanism by which

developer.mozilla.org

 

728x90
반응형

'Spring > Spring Security' 카테고리의 다른 글

OAuth 개념  (0) 2022.08.24
Security 권한처리하기  (0) 2022.08.24
시큐리티 로그인  (0) 2022.08.24
security 로 간단한 회원가입과 비밀번호 암호화  (0) 2022.08.23
스프링 시큐리티  (0) 2021.11.23