:-D JIPIII :-D Ich habs!!!!
Der einzige Fehler war die Codierung der URL. So sieht meine Index.html aus: <script> var ajaxUrl = <f:uri.action action="session" pageType="99"/> </script> An folgenden URL geht dann der Ajax-Request: xxx?id=1&type=99&... Der muss aber heißen: xxx?id=1&type=99& ==> & NICHT & Komisch ist nur das mir dann TYPO3 garnicht mekert. Auch nix von wegen: Session nicht definiert (wenn der Eintrag für sessionAction in der ext_localconf.php fehlt). Hier mein (fast) vollständiger Code: IndexController: <?php namespace KKSoftware\Kksession\Controller; use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Extbase\Mvc\Controller\ActionController; class IndexController extends ActionController { public function indexAction() { } public function sessionAction() { /** @var \TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController $TSFE */ $TSFE = $GLOBALS['TSFE']; $mode = GeneralUtility::_POST('mode'); $data = null; switch ($mode) { case 'schreibe': $sesVal = GeneralUtility::_POST('sesVal'); $TSFE->fe_user->setKey('ses', 'sesVal', $sesVal); break; case 'lese': $data = $TSFE->fe_user->getKey('ses', 'sesVal'); break; } return json_encode(['sesVal' => $data]); } } Index.html <script> var ajaxUrl = '<f:uri.action action="session" pageType="99"/>'; </script> session.js $().ready(function () { ajaxUrl = ajaxUrl.replace(/&/g, '&'); $('button').on('click', function() { var mode = $(this).attr('data-mode'); $.ajax({ url: ajaxUrl, method: 'POST', dataType: 'json', data: { mode: mode, sesVal: $('#test').val() }, success: function (result) { console.log(result); }, error: function () { console.log('error'); } }); }); }); _______________________________________________ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german