Backend Routes - Ajax - TYPO3 7.6
TYPO3 bindet für Ajax Request nun automatisch die Datei <extension>/Configuration/Backend/AjaxRoutes.php ein.
Eine Konfiguration ist dann wie folgt möglich:
Im Javascript Backend lässt sich die neue Route über den festgelegten Key auslesen.
Zum Beispiel so:
Die Funktion im Controller erhält einen Response und einen Request Parameter.
<?php
return [
'add_something' => [
'path' => '/<extensionname>/add', // der Pfad ist hier nicht an die extension gebunden ... erscheint mir hier aber sinnvoll
'target' => VENDOR\<extensionname>\Controller\ExampleController::class . '::addFunction',
]
];
$.ajax({
url: TYPO3.settings.ajaxUrls['add_something'],
method: 'post',
data: {"data": data},
dataType: 'json',
success: function(response) {
console.log(response);
}
});
/**
* @param \Psr\Http\Message\ServerRequestInterface $request
* @param \Psr\Http\Message\ResponseInterface $response
*
* @return \Psr\Http\Message\ResponseInterface
*/
public function handleSortingAjax(
\Psr\Http\Message\ServerRequestInterface $request,
\Psr\Http\Message\ResponseInterface $response
) {
$data = $request->getParsedBody();
// ... do something with the data ...
$response->getBody()->write('Hello World!');
return $response;
}
Hat dir der Artikel gefallen?
Werkraum News:

Toller Podcast zu Künstliche Intelligenz von Sascha Lobo
Wir von werkraum träumen ja schon seit langem vom eigenen Podcast, wäre das nicht immer so viel spannende Projekte, die es zu erledigen gibt. Solange hören wir einfach andere…
Matomo im DDEV installieren
Ich zeige euch wie man eine lokale Matomo Instanz im DDEV nutzen kann.
Strukturierte Daten - schema.org
Suchmaschinen mit den richtigen Daten füttern ist einfacher als man denkt.