1
私はAPIのクライアントを書いている
...Zend Framework 3の応答から有効なJSON出力を取得するにはどうすればよいですか?
use Zend\Http\Client;
use Zend\Http\Request;
use Zend\Json\Json;
...
$request = new Request();
$request->getHeaders()->addHeaders([
'Accept-Charset' => 'UTF-8',
'Accept' => 'application/hal+json',
'Content-Type' => 'application/hal+json; charset=UTF-8',
]);
$apiAddress = 'http://my.project.tld/categories';
$request->setUri($apiAddress);
$request->setMethod('GET');
$client = new Client();
$response = $client->dispatch($request);
$data = $response->getContent();
...と、このように壊れたJSONを取得:
1f9e <-- What is it?
{"_links...
\u043 <-- What is it?
1a6...
tfoli <-- What is it?
0
を文字列がseparaten 5への行です:
- 1行目:のみ
1f9e
- 2行目:最初のコンテンツ部分
- 3Dライン:文字列
1a6
- 第四行目:第2のコンテンツの一部
- 第5行:
0
は、なぜ私は、追加のシンボル/文字列を取得していますか?これを回避するには、有効なJSON出力を取得しますか?
ありがとうございました。私は私のIDEのオートコンプリート機能を信頼しているので、 'getBody()'を使用しませんでした。 'Zend \ Http \ Client#dispatch(...)'は 'Zend \ Stdlib \ ResponseInterface'を返します。私はそれを考慮せず、 'getContent(...)'と 'getMetadata(...)'だけで、 'getBody(...)'がもう提供されていないと思った。しかし、 'dispatch(...)'によって返される具体的なオブジェクトは 'Zend \ Http \ Response'であり、必要なメソッド' getBody() 'を提供します。今それは働いている。どうもありがとう! – automatix
いつでもようこそ! – unclexo