Summary: if you're posting a form via
Content-Type: application/x-www-form-urlencoded then the
data attribute itself must be a valid URL-encoded string - it CANNOT be a hash. Angular $http will not convert it to a URL-encoded format (like jQuery does).
When you run this code your cake log will have a line like:
2013-11-12 20:08:50 Error: POST: Array ( [name] => scott [flavor] => vanilla )
With whatever you put into the Name & Flavor text inputs
This blog post has some code which can be implemented to make $http behave more like jQuery.ajax