J'ai lu cette réponse mais je crois qu'il existe une meilleure façon de créer une requête URL http dans Guzzle, je cherche quelque chose comme ça, mais je ne peux pas le faire fonctionner correctement, je ne sais pas non plus s'il y a est un moyen de vider la chaîne d'URL pour voir si elle fonctionne correctement. Quelqu'un pourrait-il me montrer la bonne façon de procéder?
// works correctly
$client = New GuzzleHttp\Client();
$request = $client->get('http://192.168.50.8/foo?-db=database&-lay=layout&-find');
print_r($request->getBody());
Ne marche pas
$request = $client->get($config->Layout['server'], [], [
'query' => [
$config->Layout['switches'], // ([ '-db' => 'database', '-lay' => 'layout', '-find' => true)
$config->Layout['options'], // other params
]
]);
J'ai le même problème. J'ai trouvé la solution
public static function getGroupList($current=false) {
$response = self::getRestClient()->get(
[
'domains/{domainId}/pricelists',
['domainId' => self::getDomainId()]
],
[
'query' => [
current => $current
]
]
);
return new RestResponse($response);
Essayer
$response = $client->get(
[
$config->Layout['server'],
[]
],
[
'query' => [
$config->Layout['switches'], // ([ '-db' => 'database', '-lay' => 'layout', '-find' => true)
$config->Layout['options'], // other params
]
]
);
Une autre variante de la bonne réponse:
$params = [
'query' => [
'option_1' => string,
'option_2' => string
]
];
Et puis appelez votre demande:
$response = $guzzle_client->request('GET','/api.com',$params);