<big id="yeiyz"><ruby id="yeiyz"></ruby></big>
    <track id="yeiyz"></track>
    <track id="yeiyz"></track>
    <p id="yeiyz"><del id="yeiyz"></del></p><td id="yeiyz"><option id="yeiyz"></option></td>
    1. <p id="yeiyz"></p>

      <td id="yeiyz"></td>

      YurunHttp v3.2.3 發布,支持 JSON 類型的 RequestBody

      宇潤
       宇潤
      發布于 2019年10月10日
      收藏 6

      YurunHttp 是開源的 PHP HTTP 類庫,支持鏈式操作,簡單易用。

      支持所有常見的 GET、POST、PUT、DELETE、UPDATE 等請求方式,支持上傳下載、設置和讀取 header、Cookie、請求參數、失敗重試、限速、代理、證書等。

      3.0 版完美支持 Curl、Swoole 協程;3.2 版支持 Swoole WebSocket 客戶端。

      git 倉庫中 test 目錄里是示例代碼!

      更新日志(v3.2.3):

      • 支持 JSON 類型的 RequestBody
      use Yurun\Util\HttpRequest;
      
      $http = new HttpRequest;
      $response = $http->post('http://www.xxx.com', [
          'id'    =>  1,
      ], 'json');
      echo 'html:', PHP_EOL, $response->body();

      Composer

      本項目可以使用composer安裝,遵循psr-4自動加載規則,在你的 composer.json 中加入下面的內容

      {
          "require": {
              "yurunsoft/yurun-http": "~3.2"
          }
      }

      然后執行 composer update 安裝。

      之后你便可以使用 include "vendor/autoload.php"; 來自動加載類。(ps:不要忘了namespace)

      用法

      簡單調用

      <?php
      use Yurun\Util\HttpRequest;
      
      $http = new HttpRequest;
      $response = $http->ua('YurunHttp')
                       ->get('http://www.baidu.com');
      
      echo 'html:', PHP_EOL, $response->body();

      PSR-7 請求構建

      <?php
      use Yurun\Util\YurunHttp\Http\Request;
      use Yurun\Util\YurunHttp;
      
      $url = 'http://www.baidu.com';
      
      // 構造方法定義:__construct($uri = null, array $headers = [], $body = '', $method = RequestMethod::GET, $version = '1.1', array $server = [], array $cookies = [], array $files = [])
      $request = new Request($url);
      
      // 發送請求并獲取結果
      $response = YurunHttp::send($request);
      
      var_dump($response);

      Swoole 協程模式

      <?php
      use Yurun\Util\YurunHttp;
      use Yurun\Util\HttpRequest;
      
      // 設置默認請求處理器為 Swoole
      YurunHttp::setDefaultHandler('Yurun\Util\YurunHttp\Handler\Swoole'); // php 5.4
      // YurunHttp::setDefaultHandler(\Yurun\Util\YurunHttp\Handler\Swoole::class); // php 5.5+
      
      // Swoole 處理器必須在協程中調用
      go('test');
      
      function test()
      {
          $http = new HttpRequest;
          $response = $http->get('http://www.baidu.com');
          echo 'html:', PHP_EOL, $response->body();
      }

      WebSocket Client

      YurunHttp::setDefaultHandler(\Yurun\Util\YurunHttp\Handler\Swoole::class);
      go(function(){
          $url = 'ws://127.0.0.1:1234/';
          $http = new HttpRequest;
          $client = $http->websocket($url);
          if(!$client->isConnected())
          {
              throw new \RuntimeException('Connect failed');
          }
          $client->send('data');
          $recv = $client->recv();
          var_dump('recv:', $recv);
          $client->close();
      });

      具體詳見examples目錄中的示例代碼

      相關地址:

      本站文章除注明轉載外,均為本站原創或編譯。歡迎任何形式的轉載,但請務必注明出處,尊重他人勞動共創開源社區。
      轉載請注明:文章轉載自 OSCHINA 社區 [http://www.url23.com]
      本文標題:YurunHttp v3.2.3 發布,支持 JSON 類型的 RequestBody
      加載中

      最新評論(2

      water6000
      water6000
      你原來那個框架不維護了,是嗎?
      宇潤
      宇潤
      YurunPHP 框架已經停止新功能的開發,如果你還在用,發現了bug,還是可以給我提issue的,我會盡快解決。

      現在我主要使用和維護 imi 框架:https://gitee.com/yurunsoft/IMI
      返回頂部
      頂部
      聚看影院