Я пытаюсь загрузить файл в Guzzle, и он действует на проводной основе. Затем я заметил, что URL-адрес запроса ушел. Я не понимаю, как использовать функцию setEncodingType(false);
.Отключение кодировки URL в Guzzle
Это то, что я имею прямо сейчас.
public class Foo{
private $client;
private $loginUrl = 'https://<site>/login';
private $parseUrl = 'https://<site>/download';
public function __construct()
{
require_once APPPATH . 'third_party/guzzle/autoloader.php';
$this->client = new GuzzleHttp\Client(['cookies' => true, 'allow_redirects' => [
'max' => 10, // allow at most 10 redirects.
'strict' => true, // use "strict" RFC compliant redirects.
'referer' => true, // add a Referer header
'protocols' => ['https'], // only allow https URLs
'track_redirects' => true
]]);
}
public function download(){
$q_params = array('param_a'=> 'a', 'param_b'=>'b');
$target_file = APPPATH.'files/tmp.log';
$response = $this->client->request('GET', $this->parseUrl,['query'=>$reportVars, 'sink' => $target_file]);
}
}
Может ли кто-нибудь сказать мне, как я могу отключить кодировку url в вышеуказанном коде?
Какая версия Guzzle? –
@ShaunBramley Я использую новейший vesion – Fawzan
Как вы определяете, что он собирается haywire? Вы обфускали параметры и значения параметров, поэтому трудно понять, как это может вызвать проблемы с urlencoding. Кроме того, '$ reportVars' не входит в область действия' download() ', что, вероятно, вызывает определенные проблемы. То же самое для '$ q_params' никогда не используется в вызове Guzzle. – ceejayoz