HTTP 요청과 Header 지정을 통해, 일부 기능을 구현하는 와중에 해당 header값을 Back-end에서
받지 못하는 현상이 발생하여서, 서칭해본 결과 CORS 정책에 따른 HTTP 요청 구조에 따른 문제였습니다.
Preflight Request 를 통해, 서버단에 어떠한 Method로 어떠한 Header와 함께 요청을 할거라는 것을
미리 알리고, CORS 검증을 거치게 되는것입니다.
그렇다면 우린 어떻게 Preflight Request인지 Back-end에서 판단 할 수 있을까?
바로 아래 두가지의 Header 값을 통하여 preflight request 임을 유추해볼 수 있습니다.
✔ Access-Control-Request-Method : <method>
Access-Control-Request-Method 는 preflight 요청에 쓰이는 header 입니다.
클라이언트가 서버에게 보낼 본 요청에 쓰일 method 를 미리 알려주는 역할입니다.
해당 헤더는 preflight 요청에 있어 필수.
✔ Access-Control-Request-Headers : <header-name>, <header-name>, ...
Access-Control-Request-Headers 는 preflight 요청에 쓰이는 header 입니다.
클라이언트가 서버에 보낼 수도 있는 HTTP header 들을 미리 알려주는 역할입니다.
위의 정보를 토대로 Back-End 에서 본 요청인지 preflight 요청인지 판단하여,
좀더 정교하고 심도있는 작업을 진행할 수 있을거같습니다.
[Flutter] 어? 자식 Widget이 렌더링이 안돼요. (0) | 2023.06.22 |
---|---|
Git branch 소스 받는 방법 (0) | 2021.11.19 |