Пример #1
0
function bootstrap(RespectMapper $mapper, RespectRouter $router, RespectContainer $config)
{
    Model\Model::setConn($mapper);
    $router->any('/**', 'Application\\Helper\\Mvc\\Router');
    /**
     * Seta o retorno de todas as rotas como resposta em JSON;
     */
    $rotas[''] = $router->always('Accept', array('application/json' => function ($data) {
        header('Content-type: application/json');
        if (v::string()->validate($data)) {
            $data = array($data);
        }
        return json_encode($data, true);
    }));
    /**
     * Rota caso ocorra algum erro
     */
    $router->errorRoute(function ($e) {
        var_dump($e);
    });
    /**
     * Rota caso ocorra alguma excessão
     */
    $router->exceptionRoute(function ($e) {
        var_dump($e);
    });
    /**
     * Rotas Configuradas pelo config.ini
     */
    if (empty($config->routes)) {
        return;
    }
    foreach ($config->routes as $route) {
        $url = $route->url;
        $class_controller = $route->controller;
        $params = isset($route->params) ? $route->params : array();
        $router->get($url, $class_controller, $params);
    }
}
Пример #2
0
<?php

require "database.php";
error_reporting(E_ALL);
ini_set('display_errors', 'on');
set_time_limit(0);
use Respect\Rest\Router;
$router = new Router();
$router->get('/', function () {
    require "views/default.php";
});
$router->any('/devs/*', '\\Beeblebrox3\\DevShop\\Controllers\\Devs');
$router->any('/cart', '\\Beeblebrox3\\DevShop\\Controllers\\Cart');
$router->post('/cart/apply-cupom', function () {
    $controller = new \Beeblebrox3\DevShop\Controllers\Cart();
    $controller->applyCupom();
});
$router->post('/cart/buy/', function () {
    $controller = new Beeblebrox3\DevShop\Controllers\Cart();
    $controller->buy();
});
$router->delete('/cart/*', '\\Beeblebrox3\\DevShop\\Controllers\\Cart');
$router->post('/config', function () {
    $controller = new Beeblebrox3\DevShop\Controllers\Config();
    $controller->import();
});
$router->exceptionRoute('InvalidArgumentException', function (InvalidArgumentException $e) {
    return 'Sorry, this error happened: ' . $e->getMessage();
});
$router->errorRoute(function ($a = null) {
    print_r($a);
Пример #3
0
<?php

require_once '../tests/bootstrap.php';
use Respect\Rest\Router;
$r3 = new Router();
$r3->any('/**', function ($url) {
    return 'Welcome to Respect/Rest the url you want is: /' . implode('/', $url);
});
 public function testNamesRoutesUsingAttributes()
 {
     $router = new Router();
     $router->allMembers = $router->any('/members', 'John, Carl');
     $response = (string) $router->dispatch('GET', '/members')->response();
     $this->assertTrue(isset($router->allMembers), 'There must be an attribute set for that key');
     $this->assertEquals('John, Carl', $response, 'The route must be declared anyway');
 }
Пример #5
0
<?php

// error_reporting(0);
use Respect\Rest\Router;
use Icecave\SemVer\Version;
$packageRoot = dirname(__DIR__);
$matches = array();
if (preg_match('{^(.*)/vendor/.+/.+$}', $packageRoot, $matches)) {
    require $matches[1] . '/vendor/autoload.php';
} else {
    require $packageRoot . '/vendor/autoload.php';
}
if (basename($_SERVER['SCRIPT_NAME']) == basename($_SERVER['SCRIPT_FILENAME']) and ($basedir = dirname($_SERVER['SCRIPT_NAME'])) != "/") {
    $router = new Router($basedir);
} else {
    $router = new Router();
}
// $router->exceptionRoute('InvalidArgumentException', function (InvalidArgumentException $e) {
// 	return '[InvalidArgumentException] Sorry, this error happened: '.$e->getMessage();
// });
$router->exceptionRoute('\\Exception', function (Exception $e) {
    return '[Exception] Sorry, this error happened: ' . $e->getMessage();
});
$router->get('/js/**', function ($jsPath) {
    return readfile(__DIR__ . '/js/' . $jsPath[0]);
});
$router->any('/**', 'Koshatul\\HAProxyWeb\\HTML\\v1_0_0\\Stats');
Пример #6
0
 /**
  * @covers Respect\Rest\Router::applyVirtualHost
  * @covers Respect\Rest\Router::appendRoute
  */
 public function testCreateUriShouldBeAwareOfVirtualHost()
 {
     $router = new Router('/my/virtual/host');
     $catsRoute = $router->any('/cats/*', 'Meow');
     $virtualHostUri = $catsRoute->createUri('mittens');
     $this->assertEquals('/my/virtual/host/cats/mittens', $virtualHostUri, 'Virtual host should be prepended to the path on createUri()');
 }