[오류모음] CORB ( Cross-Origin Read Blocking )

타마타마·2023년 6월 13일
0

오류모음

목록 보기
1/1

CORB 오류 발생

타 회사와 다른 연동 작업을 하다가 CORB 오류 발생.

피들러로 값 찍어보니 서버에서 값을 제대로 가져오는 것 같은데고, ㅁ브라우저에서 표시가 계속 안되는 상황 ..

[피들러 내용]

CORS 오류는 많이 봐왔는데, CORB 오류는 처음 보는 것이였다 ..

url 호출 : jsonp 사용

타 회사에서 우리 쪽 url을 어떻게 호출하는지 확인해보니

function function_name(url){
 $.ajax({
        url: url, 
        crossDomain: true, 
        dataType: "jsonp", 
        type: 'GET', 
        cache : true,
        timeout : 30000,
        success: function( data, textStatus){
 });
}

해당 코드 형식으로 호출하고 있었다.
내가 알기론 jsonp를 사용하여 호출하려면 콜백메서드가 있어야하는데, 우리 url 빼고 다른 url들은 정상적으로 호출되는 것 보면 이런식으로 호출해줘도 괜찮나보다.

"그럼 왜 오류가 나냐고 ㅠㅠ"

구글링을 해보니, 아래 오류처럼 MIME 형식 text/html 오류가 나는 경우면 호출하는 url에 문제가 있어서 혹은 잘못된 url이기에 오류가 날 수 있다고 했지만 나는 정상적인 url 이였다..
또 Access-Control-Allow-Origin: * 관련된 응답 헤더들을 모두 허용해주어야 한다는 것이였다.

하지만 다 허용해줘도 안됨 ..


해결방법

내 케이스에서 해결한 방법 !

  1. Access-Control-Allow-Origin: * 혹은 Access-Control-Allow-Origin: "허용해줄 url" 추가
  2. Access-Control-Allow-Methods:GET
  3. Access-Control-Allow-Headers: Content-Type
    4. X-Content-Type-Options: nosniff 도 추가해줄 것 !
    X-Content-Type-Options를 설정해주면 반드시 정해진 MIME 타입형식으로 응답해주어야 함! <꼭 명시할 것 >
    따라서 응답 헤더의 Content-Type : application/javascript로 설정
  • X-Content-Type-Options: nosniff 를 설정하면 꼭 응답 데이터의 mime type을 일치시켜야 함.. !

역시 보안이 중요해지는 만큼 개발자의 할 일도 많아지는 것 같다 ....

0개의 댓글