$this->$app->getContainer();
Helps me get past that error and now i get a
Type: Slim\Exception\ContainerValueNotFoundException
Message: Identifier “” is not defined.
What am i doing wrong? i am trying to change an oAuth controller to oAuth being a middleware. the dependency is being configured like this.
$container[‘oAuth’] = function ($c) {
$storage = new App\DataAccess\_oAuth2_CustomStorage($c->get('pdo')); // Pass a storage object or array of storage objects to the OAuth2 server class $server = new OAuth2\Server($storage); // add grant types$server->addGrantType(new OAuth2\GrantType\UserCredentials($storage));
$server->addGrantType(new OAuth2\GrantType\ClientCredentials($storage));
$server->addGrantType(new OAuth2\GrantType\RefreshToken($storage));return $server;};
$container[‘App\Controllers_Controller_oAuth2’] = function ($c) {
return new _Controller_oAuth2($c->get(‘logger’), $c->get(‘App\DataAccess_DataAccess’), $c->get(‘oAuth’));
};
And the controller was like this:
public function validateToken($request)
{// convert a request from PSR7 to hhtpFoundation $httpFoundationFactory = new HttpFoundationFactory(); $symfonyRequest = $httpFoundationFactory->createRequest($request); $bridgeRequest = BridgeRequest::createFromRequest($symfonyRequest); $token = $this->oAuth2server->getAccessTokenData($bridgeRequest); if (!$this->oAuth2server->verifyResourceRequest($bridgeRequest)) { $this->oAuth2server->getResponse()->send(); die; } // store the user_id $token = $this->oAuth2server->getAccessTokenData($bridgeRequest); $this->user = $token['user_id']; return TRUE; }// needs an oAuth2 Client credentials grant
// with Resource owner credentials grant also works
public function getAll(Request $request, Response $response, $args) {
if ($this->validateToken($request)) {
parent::getAll($request, $response, $args);} }