Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- 머신러닝종류
- Python
- 리액트
- 셀프넘버
- unionfind
- db
- SSAFYcial
- TypeScript
- 싸피
- VITE
- queryset
- sqld
- SSAFY
- Javascript
- pwa적용하기
- PWA
- vitepwa
- Django
- 백준
- js
- QuerySetAPI
- 싸피10기
- git
- 싸피셜
- 14658
- 플로이드워셜
- SQL
- 알고리즘
- 데코레이터
- react
Archives
- Today
- Total
Meme's IT
[Django] CORS Policy 본문
우선
# SOP(=Same-origin Policy)
= 동일 출처 정책
어떤 출처(origin)에서 불러온 문서나 스크립트가
다른 출처에서 가져온 리소스와 상호작용하는 것을 제한하는 보안 방식
같은 출처인 걸 어떻게 구분하는데?
→ Protocol, Host, Port가 같아야 같은 출처로 인정해줌
근데.. 어떻게 다 같은 출처야..
요즘 다 밖에서 API 따서오고 다른 출처로부터 리소스 요청이 엄청 많은데?
그래서 CORS라는 정책이 생겼다
# CORS(= Cross-Origin Resource Sharing)
= 교차 출처 리소스 공유
다른 출처의 자원에 접근할 수 있는 권한을 부여하도록 브라우저에게 알려주는 체제
서버측에 다른 출처지만 접근해도 됩니다~ 라는 걸 알려줘야한다
CORS는 백엔드 서버에서 설정되며, 올바른 CORS header를 포함한 응답을 반환해줘야 함
여기서 우리의 백엔드 서버는 장고이므로 장고에서 하는 방법을 한번 보자
우선 CORS를 쓰기 위해 install을 진행해주자
pip install django-cors-headers
그다음에 settings.py에 세가지를 추가해준다
# settings.py
INSTALLED_APPS = [
...
'corsheaders', # 추가
]
MIDDLEWARE = [
...
'corsheaders.middleware.CorsMiddleware', # 추가
]
# 전체 추가, 어느 주소를 허용할건지를 쓰는 곳
CORS_ALLOWED_ORIGINS = [
# 여기는 우리가 쓰는 프론트엔드(vue) 서버의 주소를 적어준다
'http://localhost:',
]
'BackEnd > Django' 카테고리의 다른 글
[Django] API KEY 숨기는 방법 (0) | 2023.10.27 |
---|---|
[Django] API 문서화 (0) | 2023.10.19 |
[Django] DRF(2) N:1 Relation (0) | 2023.10.19 |
[Django] DRF(1) single model (0) | 2023.10.18 |
[Django] DRF란? (0) | 2023.10.18 |