Jak zpracovat POST metodu z CURL
- BuMoRi
- Člen | 109
Ahoj, poprvý zkouším curl. Podle jednoho tutoriálu jsem vyzkoušel GET, DELETE, to je OK, ale teď zkouším POST takto:
<?php
$url = 'http://localhost/cms/api/post/';
$data = '{"id" : "123456", "autor" : "Autor", "nazev" : "Kniha"}';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_FAILONERROR, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data))
);
curl_exec($ch);
?>
Myslel jsem, že k datům bych se mohl dostat v metodě actionPost takto:
<?php
$post = $this->getHttpRequest()->getPost();
?>
Problém je, že vlastně ani nevím, jak toto testovat/debugovat… Byl bych vděčný za jakoukoliv radu.
- BuMoRi
- Člen | 109
Díky, tak už jsem docílil toho, co jsem potřeboval:
<?php
$post = Json::decode($this->getHttpRequest()->getRawBody());
$this->shopItemManager->insertItemApi($post);
?>
Pak jsem data uložil jako $post->id atd.
Ale ještě by mě teda zajímalo, jak bych si mohl někde v průběhu dumpnout
tu proměnnou $post? Jde to?
Editoval BuMoRi (13. 9. 2018 18:01)