Jet\RESTServer_Backend

Rozhraní backendu subsystému Jet\RESTServer.

Přehled metod

Metoda Význam
public init(
) : void
Inicializace REST serveru samotného. Dělá například to, že debugging přepne do JSON režimu, nastaví chybové stránky, případně provede další potřebné operace.
public getRequestMethod(
) : string
Určí metodu požadavku (zda jde o post, get, put, delete, ...)
public getRequestData(
) : array
Vrátí data z těla požadavku (např. při post požadavku) z JSON převedená na asociované pole.

Validace zda tělo požadavku existuje a zda jde o JSON je prováděna automaticky.
public getHttpRequestHeader(
string $header,
string $default_value=''
) : string
Vrací hodnotu určené HTTP hlavičky požadavku, nebo výchozí hodnotu, pokud tato hlavička v požadavku chybí.
public responseData(
mixed $data
) : void
Obecné odeslání libovolných dat - např. data určité entity (například článku) po úspěšném get požadavku.
public responseOK(
string $message=''
) : void
Prostá odpověď OK - pouze s určitou zprávou, ale bez doplňkových dat.
public handleNotAuthorized(
) : void
Obecná odpověď typu "na to nemáte oprávnění".
public responseError(
string|int $code,
mixed $data=null
) : void
Obecná odpověď chyby s určitým kódem a volitelně s chybovými dat, která upřesňují povahu chyby.
public responseValidationError(
array $errors
) : void
Chyba validace vstupních dat.
Chybová hlášení v poli musí být serializovatelná do JSON.
Tedy může se jednat například o instance Jet\Form_ValidationError.
public responseUnknownItem(
string|array $id
) : void
Obecná odpověď neznámá položka / neznámé položky. Parametr $id určuje jaká položka položka je neznámá / jaké položky jsou neznámé.
public responseBadRequest(
) : void
Obecná odpověď "chybný požadavek".
public handleDataPagination(
DataModel_Fetch_Instances $data
) : Data_Paginator
Na základě get parametrů (například - záleží na konkrétní implementaci) zpracuje stránkování seznamu dat a vrátí nastavený stránkovač.
public handleOrderBy(
DataModel_Fetch_Instances $data,
array $sort_items_map
) : DataModel_Fetch_Instances
Na základě get parametrů (například - záleží na konkrétní implementaci) obslouží řazení seznamu dat. Parametr $sort_items_map je asociované pole, které určuje jaký parametr (např. get) bude řadit jaký datový sloupeček. Například: public function list_Action(): void
    
{
        
$this->responseData(
            
$this->handleDataPagination(
                
$this->handleOrderBy(
                    
Content_Article::getList(),
                    [
                        
'title'     => 'article_localized.title',
                        
'date_time' => 'article.date_time'
                    
]
                )
            )
        );
    }
Předchozí kapitola
Jet\RESTServer
Další kapitola
Jet\RESTServer_Backend_Default