[TYPO3-german] AJAX im Plugin mit eID - Zugriff auf Session
David Brünner
david.bruenner at t-online.de
Sat Jun 17 14:09:58 CEST 2017
> Dann solltest du
sie auch als sessionAction bezeichnen
Das hatte ich schon Probiert.
Habe aber jetzt mal zwei Varianten - zwei versch. Controller - getestet:
IndexController:
<?php
namespace KKSoftware\Kksession\Controller;
use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;
class IndexController extends ActionController {
public function indexAction() {
}
public function sessionAction() {
$this->view->assign('test', 'wert');
}
}
SessionController:
<?php
namespace KKSoftware\Kksession\Controller;
use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;
class SessionController extends ActionController {
/**
* @var \TYPO3\CMS\Extbase\Mvc\View\JsonView
*/
protected $view;
/**
* @var string
*/
protected $defaultViewObjectName = \TYPO3\CMS\Extbase\Mvc\View\JsonView::class;
public function sessionAction() {
return $this->view->assign('wert', 'test');
}
}
Und in meinem View dann:
<script>
var ajaxUrl = '<f:uri.action action="session" controller="Index" pageType="99"/>'; <!-- Controller: Index -->
</script>
oder
<script>
var ajaxUrl = '<f:uri.action action="session" controller="Session" pageType="99"/>'; <!-- Controller: Session -->
</script>
Im Templates/Session/Session.html bzw. Templates/Index/Session.html steht immer nur: {wert}
Beide Fälle liefern das gleiche Ergebnis. Ich bekomme immer das zurück geliefert - den Inhalt der aktuellen Seite.
Also ich meine die Entwicklerkonsole zeigt im Response-Tab die aktuelle Seite an.
Das sagt die Entwicklerkonsole:
Request URL:http://localhost/typo8/index.php?id=1&type=99&tx_kksession_kksession%5Baction%5D=session&tx_kksession_kksession%5Bcontroller%5D=Session&cHash=79997d7538aed3f47cc54a1884861aae
Request Method:POST
Status Code:200 OK
bzw.
Request URL:http://localhost/typo8/index.php?id=1&type=99&tx_kksession_kksession%5Baction%5D=session&tx_kksession_kksession%5Bcontroller%5D=Index&cHash=110588b4f0d2913288e34c9d28da1e0b
Request Method:POST
Status Code:200 OK
Obwohl mein JS
$().ready(function () {
$.ajax({
url: ajaxUrl,
type: 'post',
dataType: 'json',
success: function(result) {
alert(result);
},
error: function(result) {
console.log('ERROR');
console.log(result);
}
});
});
mir nicht den erwarten alert() ausgibt sondern den Error-Teil.
More information about the TYPO3-german
mailing list