HTTP (библиотека стандарта PSR-7)

Оглавление

1. Введение
2. Список методов




Введение #
К оглавлению

HTTP — достаточно простой протокол. Именно поэтому он успешно используется на протяжении многих лет. И именно поэтому существует масса библиотек и плагинов. реализующих абстракции над этим протоколом. Для упрощения взаимодействий разных систем, в недавнем времени, группой FIG был разработан стандарт под названием PSR-7 (Http Message). Он призван регламетировать классы Request и Response, подчинив из общим интерфейсам.

Существует несколько популярных библиотек (Guzzle, Zend Diactoros, Slim и другие). Наш фреймворк использует собственную разработку, представленную сервисом "HTTP". Она полностью соответствует стандарту, и имеет еще несколько дополнительных опций.

Фреймворк в режимк REST-full, использует иблиотеку по умолчанию. Но если появится необходимость использовать её отдельно (для разработки API к примеру), то можно воспользоваться ей, как обычным сервисом:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php    

    require 
__DIR__ .'/../vendor/ABC/ABC.php';   
    
$config = require __DIR__ .'/resources/config.php';  
    
$app ABC::startApp($config); 
     
    
// Получаем сервис 
    
$http ABC::newService(ABC::HTTP); 
    
// Генерируем REQUEST 
    
$request $http->createRequest(); 
    
// Генерируем RESPONSE 
    
$response $http->createResponse(); 




Сервис HTTP предоствляет следующие публичные методы:#
К оглавлению

Все возвращаемые объекты соответствуют интерфейсам PSR-7
1 createRequest() Возвращает объект Request с дефолтными настройками
2 newRequest() Возвращает объект Request
3 createResponse() Возвращает объект Response с дефолтными настройками
4 newResponse() Возвращает объект Response
5 createUri() Возвращает объект Uri
6 createStream() Возвращает объект Stream
7 createUploadedFile() Возвращает объект UploadedFile




createRequest() public method
К списку методов

Возвращает объект REQUEST.

Метод вернет объект REQUEST по стандарту PSR-7 c настройками по умолчанию.

public Http::createRequest ( )
return object Объект Request




newRequest() public method
К списку методов

Возвращает объект REQUEST.

Метод вернет объект REQUEST по стандарту PSR-7.

public Http::newRequest ( $method null, $uri null, $headers null, $cookies null, $serverParams null, $body null, $uploadedFiles [] )
$method string Метод REST.
$uri object Объект URI (PSR-7).
$headers array HTTP заголовки.
$cookies array COOKIE.
$serverParams array Параметры сервера.
$body object Body.
$uploadedFiles array Загруженые файлы.
return object Объект Request




createResponse() public method
К списку методов

Возвращает объект RESPONSE.

Метод вернет объект RESPONSE по стандарту PSR-7 c настройками по умолчанию.

public Http::createResponse ( )
return object Объект Response




newResponse() public method
К списку методов

Возвращает объект RESPONSE.

Метод вернет объект RESPONSE по стандарту PSR-7.

public Http::newResponse ( $body 'php://temp', $status 200, $headers [] )
$body mix Поток или объект PSR-7 Stream
$status int Статус-код.
$headers array HTTP заголовки.
return object Объект Response




createUri() public method
К списку методов

Возвращает объект URI.

Метод вернет объект URI по стандарту PSR-7.

public Http::createUri ( $uri null )
$body string URI
return object Объект URI




createStream() public method
К списку методов

Возвращает объект STREAM.

Метод вернет объект STREAM по стандарту PSR-7.

public Http::createStream ( $stream, $mode 'r' )
$stream resource Поток
$mode string Режим
return object Объект Stream




createUploadedFile() public method
К списку методов

Возвращает объект STREAM.

Метод вернет объект STREAM по стандарту PSR-7.

public Http::createUploadedFile( $file null, $name null, $type null, $size null, $error UPLOAD_ERR_OK )
$stream resource Поток
$name string Имя файла
$type string Тип
$size integer Размер
$error string Ошибка
return object Объект UploadedFile