mirror of
https://github.com/grocy/grocy.git
synced 2025-10-10 16:00:56 +00:00
Only accept application/json
requests for (JSON) API requests
This commit is contained in:
@@ -19,6 +19,7 @@ use Grocy\Services\TasksService;
|
||||
use Grocy\Services\UserfieldsService;
|
||||
use Grocy\Services\UsersService;
|
||||
use DI\Container;
|
||||
use Slim\Exception\HttpException;
|
||||
|
||||
class BaseController
|
||||
{
|
||||
@@ -213,6 +214,11 @@ class BaseController
|
||||
|
||||
protected function GetParsedAndFilteredRequestBody($request)
|
||||
{
|
||||
if ($request->getHeaderLine('Content-Type') != 'application/json')
|
||||
{
|
||||
throw new HttpException($request, 'Bad Content-Type', 400);
|
||||
}
|
||||
|
||||
if (self::$htmlPurifierInstance == null)
|
||||
{
|
||||
$htmlPurifierConfig = \HTMLPurifier_Config::createDefault();
|
||||
|
@@ -22,7 +22,7 @@ class LoginController extends BaseController
|
||||
public function ProcessLogin(Request $request, Response $response, array $args)
|
||||
{
|
||||
$authMiddlewareClass = GROCY_AUTH_CLASS;
|
||||
if ($authMiddlewareClass::ProcessLogin($this->GetParsedAndFilteredRequestBody($request)))
|
||||
if ($authMiddlewareClass::ProcessLogin($request->getParsedBody()))
|
||||
{
|
||||
return $response->withRedirect($this->AppContainer->get('UrlManager')->ConstructUrl('/'));
|
||||
}
|
||||
|
Reference in New Issue
Block a user