我正在使用Guzzle和Symfony 2.7.3,我不知道为什么我有响应的标题而不是正文。 (我在WAMP的localhost上)
$donnees = array(// Base URI is used with relative requests
'base_uri' => $urlAuth,
// You can set any number of default request options.
'timeout' => 2.0,
'headers' => [
'User-Agent' => 'testing/1.0',
'Accept' => 'application/json'
],
'verify' => false,
'json' => ["Id" => $Id,
"Username" => $username,
"Password" => $password,
"SecretId" => $secretId]
);
$client = new Client($donnees);
$response = $client->post( '/auth/', $donnees );
dump($response);
所以我得到了:
但是流是空的,而我应该得到一个令牌(你可以看到内容长度:69)
你能帮助我吗,我不知道我错过了......
(服务器只接受POST以获取令牌)
答案 0 :(得分:2)
因为它是json响应你应该解码它,添加:
$response_body = json_decode($response->getBody(), true);
true
表示返回的对象将转换为关联数组。
答案 1 :(得分:0)
通过调用$response->getBody()
,您将获得 GuzzleHttp \ Psr7 \ Stream 对象。
此类有一个有用的 __ toString()方法,因此以下行将按预期工作:
$response_body = (string)$response->getBody();