2017 © Pedro Peláez
 

library http

image

asgard/http

  • Thursday, May 31, 2018
  • by leyou
  • Repository
  • 1 Watchers
  • 0 Stars
  • 1,215 Installations
  • PHP
  • 5 Dependents
  • 2 Suggesters
  • 0 Forks
  • 0 Open issues
  • 5 Versions
  • 0 % Grown

The README.md

HTTP

Build Status, (*1)

Library to handle HTTP requests, routing, controllers and responses., (*2)

Installation

If you are working on an Asgard project you don't need to install this library as it is already part of the standard libraries., (*3)

composer require asgard/http 0.*

Request & Response

Handling HTTP requests and building responses. See the documentation., (*4)

$request = \Asgard\Http\Request::createFromGlobals();
//...
return (new \Asgard\Http\Response)->setCode(404)->setContent('not found :(');

Controllers

Structure your code around controllers. See the documentation., (*5)

/**
 * @Prefix("products")
 */
class ProductController extends \Asgard\Http\Controller {
    /**
     * @Prefix("index")
     */
    public function indexAction(\Asgard\Http\Request $request) {
        //...
    }

    /**
     * @Prefix("search")
     */
    public function searchAction(\Asgard\Http\Request $request) {
        //...
    }
}

Utils

The package comes with tools. See the documentation., (*6)

HTML

#in the controller or the page view
$html->includeJS('query.js');
$html->includeCSS('style.css');

#in the layout view
$html->printAll();

Flash

#in the controller
$flash->addSuccess('Hurray!);

#in the view
$flash->showAll();

Browser

$browser = new \Asgard\Http\Browser\Browser($httpKernel, $container);
$browser->getSession()->set('admin_id', 123);

$response = $browser->post('admin/news/new', ['title'=>'foo']);

if($response->getCode() !== 200)
    echo 'error..';
else
    echo $response->getContent();

Commands

List of commands that come with the HTTP package., (*7)

Contributing

Please submit all issues and pull requests to the asgardphp/asgard repository., (*8)

License

The Asgard framework is open-sourced software licensed under the MIT license, (*9)

The Versions