• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP Http\ClientInterface类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中Guzzle\Http\ClientInterface的典型用法代码示例。如果您正苦于以下问题:PHP ClientInterface类的具体用法?PHP ClientInterface怎么用?PHP ClientInterface使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了ClientInterface类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: addPsrLoggerToClient

 /**
  * @param ClientInterface $client
  * @param LoggerInterface $logger
  * @param null|string $formatter
  * @return LogPlugin
  */
 public static function addPsrLoggerToClient(ClientInterface $client, LoggerInterface $logger, $formatter = self::SIMPLE_FORMAT)
 {
     $formatter = is_null($formatter) ? self::SIMPLE_FORMAT : $formatter;
     $adapter = new PsrLogAdapter($logger);
     $plugin = new LogPlugin($adapter, $formatter);
     $client->addSubscriber($plugin);
     return $plugin;
 }
开发者ID:subscribo,项目名称:omnipay-subscribo-shared,代码行数:14,代码来源:GuzzleClientHelper.php


示例2: factory

 /**
  * Factory method which allows for easy service creation
  *
  * @param  ClientInterface $client
  * @return self
  */
 public static function factory(ClientInterface $client)
 {
     $identity = new self();
     if (($client instanceof Base || $client instanceof OpenStack) && $client->hasLogger()) {
         $identity->setLogger($client->getLogger());
     }
     $identity->setClient($client);
     $identity->setEndpoint(clone $client->getAuthUrl());
     return $identity;
 }
开发者ID:skinnard,项目名称:FTL-2,代码行数:16,代码来源:Service.php


示例3: factory

 /**
  * Factory method which allows for easy service creation
  *
  * @param  ClientInterface $client
  * @return self
  */
 public static function factory(\Guzzle\Http\ClientInterface $client)
 {
     $tempAuth = new self();
     if (($client instanceof \OpenCloud\Common\Base || $client instanceof \OpenCloud\OpenStack) && $client->hasLogger()) {
         $tempAuth->setLogger($client->getLogger());
     }
     $tempAuth->setClient($client);
     $tempAuth->setEndpoint(clone $client->getAuthUrl());
     return $tempAuth;
 }
开发者ID:fia-net,项目名称:openstack-tempauth,代码行数:16,代码来源:TempAuth.php


示例4: factory

 /**
  * Simple factory method for creating services.
  * 
  * @param Client $client The HTTP client object
  * @param string $class  The class name of the service
  * @param array $options The options.
  * @return \OpenCloud\Common\Service\ServiceInterface
  * @throws ServiceException
  */
 public static function factory(ClientInterface $client, $class, array $options = array())
 {
     $name = isset($options['name']) ? $options['name'] : null;
     $urlType = isset($options['urlType']) ? $options['urlType'] : null;
     if (isset($options['region'])) {
         $region = $options['region'];
     } elseif ($client->getUser() && ($defaultRegion = $client->getUser()->getDefaultRegion())) {
         $region = $defaultRegion;
     } else {
         $region = null;
     }
     return new $class($client, null, $name, $region, $urlType);
 }
开发者ID:samj1912,项目名称:repo,代码行数:22,代码来源:ServiceBuilder.php


示例5: __construct

 public function __construct(ClientInterface $client = null)
 {
     $this->client = $client;
     if (!$this->client) {
         $this->client = new Client();
         $this->client->getEventDispatcher()->addListener('request.error', function (Event $event) {
             // override guzzle default behavior of throwing exceptions
             // when 4xx & 5xx responses are encountered
             $event->stopPropagation();
         }, -254);
         $this->client->addSubscriber(BackoffPlugin::getExponentialBackoff(5, array(500, 502, 503, 408)));
     }
 }
开发者ID:aztech-dev,项目名称:Zippy,代码行数:13,代码来源:LegacyGuzzleReaderFactory.php


示例6: load

 /**
  * {@inheritdoc}
  */
 public function load(ClassMetadata $metadata, ParserInterface $parser)
 {
     // Create a request with basic Auth
     $request = $this->client->get('repos/' . $this->owner . '/' . $this->repository . '/contents');
     try {
         // Send the request and get the response.
         $response = $request->send();
     } catch (ClientErrorResponseException $e) {
         $this->handleBadResponseExceptions($e);
     }
     $files = $response->json();
     $batch = array();
     foreach ($files as $file) {
         $batch[] = $this->client->get('repos/' . $this->owner . '/' . $this->repository . '/contents/' . $file['path']);
     }
     try {
         $responses = $this->client->send($batch);
     } catch (MultiTransferException $e) {
         $this->handleBadResponseExceptions($e->getFirst());
     }
     $content = array();
     foreach ($responses as $response) {
         $file = $response->json();
         $decodedContent = base64_decode($file['content']);
         $content[] = $parser->parse($metadata, $file['name'], $decodedContent);
     }
     return $content;
 }
开发者ID:fabricius,项目名称:fabricius,代码行数:31,代码来源:GithubLoader.php


示例7: loadWsdl

 /**
  * Load remote WSDL to local cache.
  *
  * @param string $url
  * @return string
  */
 public function loadWsdl($url)
 {
     $response = $this->guzzleClient->get($url)->send();
     $cacheFilePath = $this->getCachedWsdlPath($url);
     $this->fs->dumpFile($cacheFilePath, $response->getBody(true));
     return $cacheFilePath;
 }
开发者ID:antrampa,项目名称:crm,代码行数:13,代码来源:WsdlManager.php


示例8: post

 /**
  * {@inheritdoc}
  */
 public function post($url, array $headers = array(), $content = '')
 {
     $headers['content-type'] = 'application/json';
     $request = $this->client->post($url, $headers, $content);
     $this->response = $request->send();
     return $this->response->getBody(true);
 }
开发者ID:BAY-A,项目名称:Gravity-Forms-DigitalOcean,代码行数:10,代码来源:GuzzleAdapter.php


示例9: load

 /**
  * {@inheritdoc}
  */
 public function load(ClassMetadata $metadata, ParserInterface $parser)
 {
     // Create a request with basic Auth
     $request = $this->client->get('metadata/dropbox/' . $this->path);
     try {
         // Send the request and get the response.
         $response = $request->send();
     } catch (ClientErrorResponseException $e) {
         $this->handleBadResponseExceptions($e);
     }
     $responseBody = $response->json();
     $batch = array();
     foreach ($responseBody['contents'] as $file) {
         $batch[] = $this->client->get('https://api-content.dropbox.com/1/files/dropbox' . $file['path']);
     }
     try {
         $responses = $this->client->send($batch);
     } catch (MultiTransferException $e) {
         $this->handleBadResponseExceptions($e->getFirst());
     }
     $content = array();
     foreach ($responses as $response) {
         $url = parse_url($response->getEffectiveUrl());
         $filename = basename($url['path']);
         $receivedContent = $response->getBody(true);
         $content[] = $parser->parse($metadata, $filename, $receivedContent);
     }
     return $content;
 }
开发者ID:fabricius,项目名称:fabricius,代码行数:32,代码来源:DropboxLoader.php


示例10: handleRequest

 /**
  * Sends the request to given URL and returns JSON response.
  * 
  * @param string
  * @return void
  */
 public function handleRequest($url)
 {
     $request = $this->client->get($url);
     $json = ['success' => TRUE, 'error' => NULL, 'body' => NULL];
     $this->enableCrossDomainRequests();
     try {
         $result = $request->send(TRUE);
     } catch (CurlException $e) {
         $json['success'] = FALSE;
         $json['error'] = sprintf("Unable to handle request: CURL failed with message '%s'.", $e->getError());
         switch ($e->getErrorNo()) {
             case CURLE_COULDNT_RESOLVE_HOST:
                 http_response_code(404);
                 break;
             default:
                 http_response_code(400);
                 break;
         }
     }
     if (isset($result)) {
         $json['body'] = $result->getBody(TRUE);
     }
     header('Content-Type: application/json');
     echo json_encode($json);
 }
开发者ID:htmldriven,项目名称:cors-proxy,代码行数:31,代码来源:RequestHandler.php


示例11: getMessage

 /**
  * {@inheritdoc}
  */
 public function getMessage($id)
 {
     try {
         return $this->guzzle->get('/messages/' . $id . '.json')->send()->json();
     } catch (GuzzleException $e) {
         throw new ConnectionException("", 0, $e);
     }
 }
开发者ID:kibao,项目名称:mailcatcher,代码行数:11,代码来源:GuzzleConnection.php


示例12: put

 /**
  * {@inheritdoc}
  */
 public function put($url, array $headers = array(), array $content = array(), array $files = array())
 {
     $request = $this->client->put($url, $headers, $content);
     foreach ($files as $key => $file) {
         $request->addPostFile($key, $file);
     }
     return $this->sendRequest($request);
 }
开发者ID:widop,项目名称:http-adapter,代码行数:11,代码来源:GuzzleHttpAdapter.php


示例13: loadWsdl

 /**
  * Load remote WSDL to local cache.
  *
  * @param string $url
  * @return string
  */
 public function loadWsdl($url)
 {
     $clientOptions = ['verify' => empty($this->bundleConfig['sync_settings']['skip_ssl_verification'])];
     $response = $this->guzzleClient->get($url, null, $clientOptions)->send();
     $cacheFilePath = $this->getCachedWsdlPath($url);
     $this->fs->dumpFile($cacheFilePath, $response->getBody(true));
     return $cacheFilePath;
 }
开发者ID:heoffice,项目名称:crm,代码行数:14,代码来源:WsdlManager.php


示例14: track

 public function track($trackingNumber)
 {
     try {
         $response = $this->httpClient->post($this->url, array(), array('API' => 'TrackV2', 'XML' => $this->createTrackRequestXml($trackingNumber)))->send();
     } catch (HttpException $e) {
         throw Exception::createFromHttpException($e);
     }
     return $this->parseTrackResponse($response->getBody(true), $trackingNumber);
 }
开发者ID:hautelook,项目名称:shipment-tracking,代码行数:9,代码来源:UspsProvider.php


示例15: track

 public function track($trackingNumber)
 {
     try {
         $response = $this->httpClient->get($this->url, array(), array('query' => array('RQXML' => $this->createRequestXml($trackingNumber))))->send();
     } catch (HttpException $e) {
         throw Exception::createFromHttpException($e);
     }
     return $this->parse($response->getBody(true));
 }
开发者ID:hautelook,项目名称:shipment-tracking,代码行数:9,代码来源:LandmarkProvider.php


示例16: send

 /**
  * @param string $endpoint
  * @param string $content
  * @param array $headers
  * @param array $files
  *
  * @return Response
  */
 public function send($endpoint, $content, array $headers = array(), array $files = array())
 {
     $request = $this->client->createRequest(RequestInterface::POST, $endpoint, $headers, $content, array('exceptions' => false));
     if ($files && $request instanceof EntityEnclosingRequestInterface) {
         $request->addPostFiles($files);
     }
     $response = $request->send();
     return new Response($response->getStatusCode(), $response->getBody(true));
 }
开发者ID:andorpandor,项目名称:git-deploy.eu2.frbit.com-yr-prototype,代码行数:17,代码来源:Guzzle.php


示例17: getByAccessToken

 /**
  * @param string $access_token
  * @return User
  */
 public function getByAccessToken($access_token)
 {
     $me = $this->http->get('https://graph.facebook.com/me?access_token=' . $access_token)->send()->json();
     $data = $this->data_provider->findUserByFacebookId($me['id']);
     $user = null;
     if ($data != null) {
         $user = $this->createUser($data);
     }
     return $user;
 }
开发者ID:shina,项目名称:control-my-budget,代码行数:14,代码来源:UserService.php


示例18: call

 public function call($wrappedClass, $method, array $params = array())
 {
     $request = $this->client->post(sprintf('/%s/%s', str_replace('\\', '/', $wrappedClass), $method), $params);
     $auth = $this->getAuthConfig($this->auth);
     if ($auth) {
         $request->setAuth($auth['login'], $auth['pass'], $auth['type']);
     }
     $response = $request->send();
     return $response->getBody();
 }
开发者ID:evaneos,项目名称:dic-it,代码行数:10,代码来源:RestAdapter.php


示例19: track

 public function track($trackingNumber)
 {
     $body = $this->createAuthenticationXml() . $this->createTrackXml($trackingNumber);
     try {
         $response = $this->httpClient->post($this->url, array(), $body)->send();
     } catch (HttpException $e) {
         throw Exception::createFromHttpException($e);
     }
     return $this->parse($response->getBody(true));
 }
开发者ID:adrienbrault,项目名称:shipment-tracking,代码行数:10,代码来源:UpsProvider.php


示例20: createHttpRequest

 /**
  * 
  * @param \Wehup\AMI\Request\RequestInterface $request
  * @return \Guzzle\Http\Message\Response
  */
 protected function createHttpRequest(Request\RequestInterface $request)
 {
     $httpRequest = $this->httpClient->get('rawman');
     $httpRequest->addCookie('mansession_id', $this->cookie);
     foreach ($request->getParams() as $key => $value) {
         $httpRequest->getQuery()->set($key, $value);
     }
     $httpRequest->getQuery()->set('Action', $request->getAction());
     return $httpRequest;
 }
开发者ID:wehup,项目名称:asterisk-ami,代码行数:15,代码来源:Manager.php



注:本文中的Guzzle\Http\ClientInterface类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP Http\EntityBody类代码示例发布时间:2022-05-23
下一篇:
PHP Http\Client类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap