Snažím se zprovoznit Guzzle 6

jAkErCZ
Člen | 321
+
-4
-

Zdravím,
potřebujeme na nějakou url posílat json z našeho formuláře. A bylo mi doporučeno Guzzlete 6 ale ať se snažím jak se snažím nemůžu zjistit zda-li ty data odchází jak mají… jelikož mi je řečeno že na danou url nic nepříjde… ale zvolá se..

Řešení viz dokumentace:

$client = new Client();
$response = $client->post("http://www.fen-ix.eu/rzokna/import_www.php", [
                RequestOptions::JSON => [$values],
                'on_stats' => function (TransferStats $stats) {

                }
            ]);

Jak to tedy řešit správně aby to fungovalo jak potřebujeme jelikož někteří mi tvrdí že to má být v DI ale nic takového v dokumentaci nepíší.

Díky všem za pomoc

nightfish
Člen | 472
+
+1
-

Předpokládám, že spíš než TransferStats se ti bude hodit debug info, takže do pole prostě přidej:

$client = new Client();
$response = $client->post("http://www.fen-ix.eu/rzokna/import_www.php", [
	RequestOptions::JSON => [$values],
	'debug' => true,
    'on_stats' => function (TransferStats $stats) { }
]);

Pokud by se žádné debug info nevypsalo (protože ti aplikace nějakým způsobem požírá výstup), tak zavolej:

$client = new Client();
$logFile = fopen(__DIR__.'/debug.log', 'w');
$response = $client->post("http://www.fen-ix.eu/rzokna/import_www.php", [
	RequestOptions::JSON => [$values],
	'debug' => $logFile,
    'on_stats' => function (TransferStats $stats) { }
]);
fclose($logFile);

…a výstup se ti uloží do souboru debug.log.

jAkErCZ
Člen | 321
+
-1
-

nightfish napsal(a):

Předpokládám, že spíš než TransferStats se ti bude hodit debug info, takže do pole prostě přidej:

$client = new Client();
$response = $client->post("http://www.fen-ix.eu/rzokna/import_www.php", [
	RequestOptions::JSON => [$values],
	'debug' => true,
    'on_stats' => function (TransferStats $stats) { }
]);

Pokud by se žádné debug info nevypsalo (protože ti aplikace nějakým způsobem požírá výstup), tak zavolej:

$client = new Client();
$logFile = fopen(__DIR__.'/debug.log', 'w');
$response = $client->post("http://www.fen-ix.eu/rzokna/import_www.php", [
	RequestOptions::JSON => [$values],
	'debug' => $logFile,
    'on_stats' => function (TransferStats $stats) { }
]);
fclose($logFile);

…a výstup se ti uloží do souboru debug.log.

No udělal sem obojí a nic… debug se nesputil a soubor se ani nevytvořil :D

nightfish
Člen | 472
+
0
-

jAkErCZ napsal(a):
No udělal sem obojí a nic… debug se nesputil a soubor se ani nevytvořil :D

Mně ten kód normálně funguje, takže si holt budeš muset zjistit, co je u tebe špatně. Začal bych pohledem do error logu. Případně pokud to máš jako součást nějaké aplikace, tak si udělej bokem jeden jediný skript, jehož jediným cílem bude spuštění kódu výše – minimálně tím dosáhneš toho, že ti to zbytek aplikace a jiné nainstalované balíčky nebudou ovlivňovat.