How to Deal with Content-Types
By default Slim does not parse any other content-type other than the standard form data because PHP does not support it. That means if you attempt to post application/json you will not be able to access the data via $app->request->post();
To solve this You must parse the content type yourself. You can either do this on a per-route basis
//For application/json
$data = json_decode($app->request->getBody());
or use some pre-built middleware (https://github.com/slimphp/Slim-Middleware)