options 메쏘드에 대해

POST 메소드로 리모트 서버의 프로토콜을 호출하면 POST만 요청하지 않는다. 동일한 주소의 OPTIONS 메소드를 먼저 요청하고 200 응답을 확인 후 POST 메쏘드를 호출한다. 이것을 Preflighted request라고 한다. POST, PUT처럼 서버 자원을 변경하는 메소드일 경우 서버 확인을 위해 OPTIONS 메소드를 사용하는 것이다. POST, PUT 메소드는 서버 자원 변경을 위해 많은 데이터를 전송할 수 있기 때문이다.

만약 서버에 문제가 있다면 많은 데이터를 보내는 것은 분명 낭비다. 그러한 이유로 OPTIONS 메소드를 통해 Preflighted request를 먼저 날리는 것 같다.