Preflighted error while using the $http.post() method. The $http service  uses the browsers XMLHttpRequest object.  Angular defaults the $http.post method to use content type of ‘application/json. Based on this documentation this default content type would trigger a preflighted request while using CORS.

It uses methods other than GET, HEAD or POST.  Also, if POST is used to send request data with a Content-Type other than application/x-www-form-urlencoded, multipart/form-data, or text/plain.