Ricevo uno strano problema di codifica da una chiamata zf2 api. Ho verificato l'API sta lavorando internamente, e la risposta si suppone rispedire proviene da questo nella routine api, che prende un file immagine e le colture è:Codifica bizzarra in risposta da chiamata ZF2 api utilizzando curl
$result = new ViewModel(array('output'=>$output, 'response'=>json_encode($response)));
Una discarica di $ risultato prima di essere inviato si affaccia in questo modo:
[output] => json
[response] =>{"data":"http:\/\/dev.xxxxx.com\/tools\/files\/temporary_files\/f16da1965e4d0c487ae7692f4b51558b917c238e.1","status":"OK"}
Ma la risposta effettiva sto ottenendo posteriore è simile a questo:
^_<8b>^H^@^@^@^@^@^@^C%ÍM
^B!^T^@໸^Nß¹Â,:B<õI<82><8e><83>¾<82><88>î^Ðò[}o<96><80><80>ìNt¬B4(5^R>y*<93>F ¥ï<ö&¨÷:E.^U§ lG^_0^·¿³4 ¤7^ZU:Gå, 5~É*h©µ^K^Ú¸\^\rÉNl^RÐcþÖëÆ>_Id»'<83>^@^@^@
Ecco come sto chiamando l'API, utilizzando ricciolo:
$client = new Client($api_url);
$adapter = new Curl();
$adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
$client->setAdapter($adapter);
$request = new Request();
$request->setUri($api_url);
$request->setMethod(\Zend\Http\Request::METHOD_POST);
$request->setContent($postString);
$response = $client->dispatch($request);
$responseContent = $response->getContent();
La parte che sembra codificata è un dump di $ responseContent. Pensando che potrebbe essere gzip, perché l'intestazione della risposta dice che il tipo di contenuto è gzip, ho provato varie chiamate decompresse su di esso, senza alcun risultato. Che diamine sta succedendo qui?