From 4ec19604ad82e90e5a758ab6b0a31654cdc66513 Mon Sep 17 00:00:00 2001 From: Daniel Weipert Date: Sun, 7 May 2023 11:22:22 +0200 Subject: Fix json and cors request handling --- Readme.md | 4 ++-- src/App.php | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Readme.md b/Readme.md index bd67538..33663c6 100644 --- a/Readme.md +++ b/Readme.md @@ -3,7 +3,7 @@ Flat-File Forms Forms and Submissions managed flat-file -Callable via REST-API +Callable via API ## Directory Structure @@ -55,7 +55,7 @@ overwritten by config.yaml in $form/config/ included if exists in subsequent config folders -## REST-API +## API `localhost:3000/$group/$group/$form` diff --git a/src/App.php b/src/App.php index 7a0c28d..ab5c592 100644 --- a/src/App.php +++ b/src/App.php @@ -64,6 +64,11 @@ class App } } + // support "Content-Type: application/json" + if ($request->headers->get('Content-Type') == 'application/json') { + $_POST = $request->toArray(); + } + // check api key $apiKey = $_GET['key'] ?? $_POST['key'] ?? null; if (empty($apiKey)) { @@ -134,6 +139,11 @@ class App } } } + + // OPTIONS + else if ($method == 'OPTIONS') { + $response->headers->set('Access-Control-Allow-Headers', $request->headers->get('Access-Control-Request-Headers')); + } } catch (\Exception $exception) { if ($exception instanceof HttpException) { $response->setStatusCode($exception->getCode()); -- cgit v1.2.3