TYPO3 v15 dev-main snapshot ()
This commit is contained in:
+48
@@ -0,0 +1,48 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _feature-93455:
|
||||
|
||||
=====================================================================
|
||||
Feature: #93455 - Backend Routes restricted to specified HTTP methods
|
||||
=====================================================================
|
||||
|
||||
See :issue:`93455`
|
||||
|
||||
Description
|
||||
===========
|
||||
|
||||
Individual Backend Routes in TYPO3 Backend can now be configured
|
||||
to only apply for specific HTTP methods (e.g. GET or POST).
|
||||
|
||||
This way, custom Backend routes can be limited to only allow
|
||||
submitted form content to be delivered via HTTP POST for example.
|
||||
|
||||
The underlying symfony routing component, which is already used
|
||||
in TYPO3 Backend for routing through the proper API, is handling the
|
||||
restriction to the HTTP method / verb automatically.
|
||||
|
||||
|
||||
Impact
|
||||
======
|
||||
|
||||
Any Backend route, configured in extensions via
|
||||
:file:`EXT:my_extension/Configuration/Backend/Routes.php`
|
||||
and :file:`EXT:my_extension/Configuration/Backend/AjaxRoutes.php`
|
||||
has a new, optional property :php:`methods`, which expects an array
|
||||
to set one or more HTTP verbs, such as :html:`GET`, :html:`POST`, :html:`PUT` or :html:`DELETE`.
|
||||
|
||||
If no property is given, no restriction to a HTTP method is set.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: php
|
||||
|
||||
return [
|
||||
'my_route' => [
|
||||
'path' => '/benni/my-route',
|
||||
'methods' => ['POST'],
|
||||
'target' => MyVendor\MyPackage\Controller\MyRouteController::class . '::submitAction'
|
||||
]
|
||||
];
|
||||
|
||||
.. index:: Backend, PHP-API, ext:backend
|
||||
Reference in New Issue
Block a user