Project

General

Profile

Actions

Feature #65493

closed

Introduce Backend Routing

Added by Benni Mack about 9 years ago. Updated over 6 years ago.

Status:
Closed
Priority:
Should have
Assignee:
Category:
Backend API
Target version:
Start date:
2015-03-03
Due date:
% Done:

100%

Estimated time:
PHP Version:
7.0
Tags:
Complexity:
hard
Sprint Focus:
Remote Sprint

Description

A new Routing API is introduced in order to streamline
the entrypoints to the TYPO3 Backend.

All previous patches by Wouter for the dispatched modules
are the foundation for this change.

Instead of using the term "module" for anything linkable
in the backend, the term "routes" fits more. a "module"
or an ajax call is a derivative of a route, which will
build on this foundation.

Routes can be registered via
Configuration/Backend/Routes.php in any extension
and are loaded solely on Backend requests.

The Routing API is inspired by the Symfony Routing
framework and mostly compatible for now
but the TYPO3 implementation only takes around
20% of the needed logic for now.

There are four new classes
- Route (a single route with a path some options)
- RouteCollection (holding all routes)
- Router (API to match paths and generate URLs)
- UrlGenerator (Generates the URL)

The main RequestHandler of all Backend modules
detects where a GET parameter "route" is given and
then resolves to a controller/action logic and checks
for a valid token.

See http://wiki.typo3.org/Blueprints/BackendRouting
for implementation details.


Related issues 1 (0 open1 closed)

Related to TYPO3 Core - Bug #68828: Avoid double encoding of routesClosed2015-08-07

Actions
Actions

Also available in: Atom PDF