Lines Matching refs:options
98 * @param array $options Request options to apply to the given
101 public function sendAsync(RequestInterface $request, array $options = []): PromiseInterface argument
104 $options = $this->prepareDefaults($options);
107 … $request->withUri($this->buildUri($request->getUri(), $options), $request->hasHeader('Host')),
108 $options
115 * @param array $options Request options to apply to the given
120 public function send(RequestInterface $request, array $options = []): ResponseInterface argument
122 $options[RequestOptions::SYNCHRONOUS] = true;
124 return $this->sendAsync($request, $options)->wait();
134 $options[RequestOptions::SYNCHRONOUS] = true;
135 $options[RequestOptions::ALLOW_REDIRECTS] = false;
136 $options[RequestOptions::HTTP_ERRORS] = false;
138 return $this->sendAsync($request, $options)->wait();
151 * @param array $options Request options to apply. See \GuzzleHttp\RequestOptions.
153 public function requestAsync(string $method, $uri = '', array $options = []): PromiseInterface argument
155 $options = $this->prepareDefaults($options);
157 $headers = $options['headers'] ?? [];
158 $body = $options['body'] ?? null;
159 $version = $options['version'] ?? '1.1';
161 $uri = $this->buildUri(Psr7\Utils::uriFor($uri), $options);
167 unset($options['headers'], $options['body'], $options['version']);
169 return $this->transfer($request, $options);
181 * @param array $options Request options to apply. See \GuzzleHttp\RequestOptions.
185 public function request(string $method, $uri = '', array $options = []): ResponseInterface argument
187 $options[RequestOptions::SYNCHRONOUS] = true;
189 return $this->requestAsync($method, $uri, $options)->wait();
281 * @param array $options Options to modify by reference
283 private function prepareDefaults(array $options): array argument
295 if (\array_key_exists('headers', $options)) {
297 if ($options['headers'] === null) {
299 unset($options['headers']);
300 } elseif (!\is_array($options['headers'])) {
306 $result = $options + $defaults;
324 * @param array $options See \GuzzleHttp\RequestOptions.
326 private function transfer(RequestInterface $request, array $options): PromiseInterface argument
328 $request = $this->applyOptions($request, $options);
330 $handler = $options['handler'];
333 return P\Create::promiseFor($handler($request, $options));
342 private function applyOptions(RequestInterface $request, array &$options): RequestInterface argument
348 if (isset($options['headers'])) {
349 if (array_keys($options['headers']) === range(0, count($options['headers']) - 1)) {
352 $modify['set_headers'] = $options['headers'];
353 unset($options['headers']);
356 if (isset($options['form_params'])) {
357 if (isset($options['multipart'])) {
364 $options['body'] = \http_build_query($options['form_params'], '', '&');
365 unset($options['form_params']);
367 … $options['_conditional'] = Psr7\Utils::caselessRemove(['Content-Type'], $options['_conditional']);
368 $options['_conditional']['Content-Type'] = 'application/x-www-form-urlencoded';
371 if (isset($options['multipart'])) {
372 $options['body'] = new Psr7\MultipartStream($options['multipart']);
373 unset($options['multipart']);
376 if (isset($options['json'])) {
377 $options['body'] = Utils::jsonEncode($options['json']);
378 unset($options['json']);
380 … $options['_conditional'] = Psr7\Utils::caselessRemove(['Content-Type'], $options['_conditional']);
381 $options['_conditional']['Content-Type'] = 'application/json';
384 if (!empty($options['decode_content'])
385 && $options['decode_content'] !== true
388 …$options['_conditional'] = Psr7\Utils::caselessRemove(['Accept-Encoding'], $options['_conditional'…
389 $modify['set_headers']['Accept-Encoding'] = $options['decode_content'];
392 if (isset($options['body'])) {
393 if (\is_array($options['body'])) {
396 $modify['body'] = Psr7\Utils::streamFor($options['body']);
397 unset($options['body']);
400 if (!empty($options['auth']) && \is_array($options['auth'])) {
401 $value = $options['auth'];
412 $options['curl'][\CURLOPT_HTTPAUTH] = \CURLAUTH_DIGEST;
413 $options['curl'][\CURLOPT_USERPWD] = "$value[0]:$value[1]";
416 $options['curl'][\CURLOPT_HTTPAUTH] = \CURLAUTH_NTLM;
417 $options['curl'][\CURLOPT_USERPWD] = "$value[0]:$value[1]";
422 if (isset($options['query'])) {
423 $value = $options['query'];
431 unset($options['query']);
435 if (isset($options['sink'])) {
437 if (\is_bool($options['sink'])) {
442 if (isset($options['version'])) {
443 $modify['version'] = $options['version'];
450 … $options['_conditional'] = Psr7\Utils::caselessRemove(['Content-Type'], $options['_conditional']);
451 $options['_conditional']['Content-Type'] = 'multipart/form-data; boundary='
456 if (isset($options['_conditional'])) {
459 foreach ($options['_conditional'] as $k => $v) {
466 unset($options['_conditional']);