Body¶
Die Body Klasse bildet den Inhalt des Requests (Anfrage) oder der Response (Antwort) ab.
Neues Body Objekt¶
Ein Body Objekt kann mit einem String oder einem Content Objekt erzeugt werden.
// \Alvine\Types\Mime\Content Objekt
$content = new \Alvine\Types\Mime\Text('Mein Inhalt');
$body = new \Alvine\Net\Http\Body($content);
// String und MimeType
$content = 'Mein Inhalt';
$body = new \Alvine\Net\Http\Body($content, new \Alvine\Types\Mime\MIMEType(\Alvine\Types\Mime\MIMEType::TEXT, \Alvine\Types\Mime\Text::HTML));
Werte auslesen¶
Auf den Inhalt eines Bodys kann mit der Mehtode getContent() zugegriffen werden. Das Objekt hat zusätzlich auch die Methode __toSrting() implementiert, so wird der Inhalt direkt zurück gegeben.
$body = new \Alvine\Net\Http\Body(new \Alvine\Types\Mime\Text('Mein Inhalt'));
// __toString()
echo $body; // Mein Inhalt
// Rückgabe ist ein \Alvine\Types\Mime\Content Objekt
$content = $body->getContent();
// Ergebnis -> Mein Inhalt
Json Werte auslesen¶
Wenn der Content vom Type "application/json" ist, kann über die Methode getValueMap() direkt eine Map zurück geliefert werden. Das Json steht dann als AlvineTypesMap zu Verfügung.
$content = '{
"Herausgeber": "schukai",
"Nummer": "1234-5678-9012-3456",
"Deckung": 2e+6,
"Waehrung": "EURO",
"Inhaber": {
"Name": "Mustermann",
"Vorname": "Max",
"maennlich": true,
"Hobbys": [ "Reiten", "Golfen", "Lesen" ],
"Alter": 42,
"Kinder": [],
"Partner": null
}
}';
$body = new \Alvine\Net\Http\Body($content, new \Alvine\Types\Mime\MIMEType(\Alvine\Types\Mime\MIMEType::APPLICATION_KEY, 'json'));
$map = $body->getValueMap();
echo $map->getValue('Herausgeber');
// Ergebnis -> schukai