Ich habe Probleme, meine Syntax zu korrigieren, und ich würde jede Unterstützung schätzen; Ich versuche, meine Client-Setup eine Basis-URL enthalten, und einige notwendigen Header-Informationen (einschließlich einer benutzerdefinierten Sicherheitstoken)Guzzle; Einrichten eines Clients mit Basis-URL, Kopfzeilen und dann POST
Der nächste Schritt ist, um den Webservice POST,:
$baseServiceURL = ['base_uri' => 'http://127.0.0.1:8080/service/v1/ws//something/update'];
$theHeaders = ['Content-Type' => 'application/json', 'Accept' => 'application/json', 'token' => 'test-token'];
$updateRequestClient = new Client($baseServiceURL, array(
"request.options" => array(
"headers" => $theHeaders
)
));
//var 1 coming from elsewhere
$varNum2 = $q;
$varNum3 = $w;
$varNum4 = $e;
$varNum5 = $r;
$varNum6 = $t;
$varNum7 = 'me';
// json name/value pairs
$updateBody['name1'] = $varNum1;
$updateBody['name2'] = $varNum2;
$updateBody['name3'] = $varNum3;
$updateBody['name4'] = $varNum4;
$updateBody['name5'] = $varNum5;
$updateBody['name6'] = $varNum6;
$updateBody['name7'] = $varNum7;
//send
$updateRequestResponse = $updateRequestClient->post([ 'body' => json_encode($updateBody) ]);
//response 200??
$responseCode = $updateRequestResponse->getStatusCode();
if ($responseCode == "200") {
echo ("SUCCESS");
}
Ich bin mit dem folgenden Fehler auf meiner HTML-Seite dargestellt:
Warning: parse_url() expects parameter 1 to be string, array given in C:\xampp\vendor\guzzlehttp\psr7\src\Uri.php on line 51
Catchable fatal error: Argument 1 passed to GuzzleHttp\Psr7\Uri::applyParts() must be of the type array, null given, called in C:\xampp\vendor\guzzlehttp\psr7\src\Uri.php on line 55 and defined in C:\xampp\vendor\guzzlehttp\psr7\src\Uri.php on line 410
Wenn ich meine URL zu bespannen $baseServiceURL = (string)('http://127.0.0.1:8080/service/v1/ws//something/update');
ändern erhalte ich:
Catchable fatal error: Argument 1 passed to GuzzleHttp\Client::__construct() must be of the type array, string given, called in C:\xampp\htdocs\SSQueryTool\updateDoctor.php on line 79 and defined in C:\xampp\vendor\guzzlehttp\guzzle\src\Client.php on line 62
Vielen Dank für Ihre Antwort, Du hast Recht. Ich habe einige Änderungen an meinem ursprünglichen Beispiel vorgenommen, um es zum Laufen zu bringen. Ich werde es unten als Antwort posten. – BernardV