Example #1
0
 public function testRequestPost()
 {
     $requestLine = 'POST /referees';
     $headers = ['Content-Type' => 'application/json'];
     $data = ['name' => 'Art H', 'roles' => ['Developer']];
     $request = new Request($requestLine, $headers, json_encode($data));
     $item = $request->getParsedBody();
     $this->assertEquals('Art H', $item['name']);
 }
Example #2
0
 public function testAuthTokenListener()
 {
     $jwtCoder = $this->container->get('jwt_coder');
     $roleHierarchy = $this->createRoleHeirarchy();
     $listener = new AuthTokenListener($roleHierarchy, $jwtCoder);
     $jwt = $jwtCoder->encode(['username' => '*****@*****.**', 'roles' => ['ROLE_USER']]);
     $headers = ['Authorization' => $jwt];
     $request = new Request('GET /api/referees', $headers);
     $request->setAttribute('_roles', 'ROLE_USER');
     $event = new KernelRequestEvent($request);
     $listener->onKernelRequestAuthToken($event);
     $authToken = $request->getAttribute('authToken');
     $this->assertEquals('*****@*****.**', $authToken->getUsername());
     $listener->onKernelRequestAuthorize($event);
 }
Example #3
0
 public function postAction(Request $request)
 {
     $requestPayload = $request->getParsedBody();
     if (isset($requestPayload['oauth_token'])) {
         $requestPayload['username'] = '******';
         $requestPayload['password'] = '******';
     }
     $username = $requestPayload['username'];
     $password = $requestPayload['password'];
     $user = $this->userProvider->loadUserByUsername($username);
     $salt = isset($user['salt']) ? $user['salt'] : null;
     $this->userPasswordEncoder->isPasswordValid($user['password'], $password, $salt);
     // Need array_values because index can get messed up
     $roles = is_array($user['roles']) ? array_values($user['roles']) : [$user['roles']];
     $jwtPayload = ['iat' => time(), 'username' => $username, 'roles' => $roles, 'person_name' => $user['person_name'], 'person_guid' => $user['person_guid']];
     $jwt = $this->jwtCoder->encode($jwtPayload);
     $jwtPayload['auth_token'] = $jwt;
     return new ResponseJson($jwtPayload, 201);
 }
Example #4
0
File: app.php Project: cerad/http
<?php

error_reporting(E_ALL);
require __DIR__ . '/../vendor/autoload.php';
use Cerad\Component\HttpMessage\Request as CeradRequest;
use Cerad\Component\HttpMessage\Response;
use Cerad\Component\HttpMessage\ResponseJson;
use Symfony\Component\HttpFoundation\Request as SymfonyRequest;
//  Symfony\Component\HttpFoundation\Response     as SymfonyResponse;
//  Symfony\Component\HttpFoundation\JsonResponse as SymfonyJsonResponse;
$ceradRequest = new CeradRequest($_SERVER);
$ceradUri = $ceradRequest->getUri();
$ceradServer = $ceradRequest->getServerParams();
$symfonyRequest = SymfonyRequest::createFromGlobals();
$user = '******';
$baseHref = $ceradRequest->getBaseHref();
$_serverPathInfo = isset($_SERVER['PATH_INFO']) ? $_SERVER['PATH_INFO'] : 'UNDEFINED';
if ($ceradRequest->isMethodPost()) {
    $content = $ceradRequest->getParsedBody();
    $user = $content['user'];
    if ($ceradRequest->isJson()) {
        $response = new ResponseJson($content, 201);
        $response->send();
        return;
    }
    if ($ceradRequest->isForm()) {
        // Redirect if had a session to store things in
    }
}
ob_start();
require 'app.html';
Example #5
0
 public function testScriptNameMatchesRequestPath()
 {
     $server = ['SCRIPT_NAME' => '/referees', 'REQUEST_URI' => '/referees'];
     $request = new Request($server);
     $this->assertEquals('/', $request->getBaseHref());
     $this->assertEquals('/referees', $request->getRoutePath());
 }