亚洲精品成人_精品成人一区_999视频在线播放_免费黄色在线_亚洲成人久久久_久久www免费视频

HttpClient

協程Http客戶端,基于\Swoole\Http\Client實現,在協程內快速發起http請求。

安裝

composer require easyswoole/http-client

請求

需要在協程環境內發起請求。

請求實例

$client = new \EasySwoole\HttpClient\HttpClient('http://easyswoole.com');

設置Url

可在實例化的時候,傳入Url,或者如下:

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setUrl('http://easyswoole.com');

設置query

通過url傳入.

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setUrl('http://easyswoole.com?a=1');

通過方法傳入.

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setQuery(['a' => 1]);

注意:

setQuery方法將你原本url的參數也帶過來.

設置Ssl

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setEnableSSL(true);

設置等待超時時間

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setTimeout(5);

設置連接超時時間

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setConnectTimeout(10);

設置Header

設置單項:

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setHeader('test','test');

設置多項:

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setHeaders(['test' => 'test']);

參數:

  • $isMerge 默認:truefalse清空原有Header重新賦值。
  • $strtolower 默認:truefalse不進行小寫轉換。

設置Cookie

設置單項:

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->addCookie('test','test');

設置多項:

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->addCookies(['test' => 'test']);

參數:

  • $isMerge 默認:truefalse清空原有Cookie重新賦值。

設置XMLHttpRequest

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setXMLHttpRequest();

設置ContentType

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setContentType($client::CONTENT_TYPE_APPLICATION_XML);

json

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setContentTypeJson();

xml

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setContentTypeXml();

from-data

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setContentTypeFormData();

from-urlencode

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setContentTypeFormUrlencoded();

設置BasicAuth

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setBasicAuth('admin','admin');

設置KeepAlive

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setKeepAlive(true);

設置客戶端配置

單個設置:

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setClientSetting('bind_address','127.0.0.1');

批量設置:

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setClientSettings([
    'bind_address'=>'127.0.0.1',
    'bind_port'=>'8090'
]);

設置FollowLocation

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->enableFollowLocation(5);

參數:

  • $maxRedirect 默認5,表示最多根據30x狀態碼進行的重定向次數。0 為關閉。

設置允許自簽證書

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setSslVerifyPeer(true,true);

設置服務器主機名稱

與ssl_verify_peer配置配合使用

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setSslHostName('');

設置驗證用的Ssl證書

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setSslCafile('');

設置Ssl證書目錄

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setSslCapath('');

設置Ssl證書文件

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setSslCertFile('');

設置Ssl證書私鑰文件

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setSslKeyFile('');

設置代理

http代理:

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setProxyHttp('127.0.0.1','1087','user','pass');

socks5代理:

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setProxySocks5('127.0.0.1','1086','user','pass');

設置端口綁定

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->setSocketBind('127.0.0.1','8090');

GET

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->get();

參數:

  • $headers 設置Header

HEAD

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->head();

DELETE

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->delete();

參數:

  • $headers 設置Header

PUT

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->put();

參數:

  • $data 請求的數據
  • $headers 設置Header

POST

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->post();

post-xml

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->postXml();

post-json

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->postJson();

參數:

  • $data 請求的數據
  • $headers 設置Header

PATCH

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->patch();

參數:

  • $data 請求的數據
  • $headers 設置Header

OPTIONS

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->options();

參數:

  • $data 請求的數據
  • $headers 設置Header

Download

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->download('./test.png');

參數:

  • $filename 保存路徑
  • $offset 寫入偏移量
  • $httpMethod 請求方法
  • $rawData 請求數據
  • $contentType 設置ContentType

上傳文件

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->post([
    'file' => new \CURLFile(__FILE__)
]);

分片上傳:


$file = new EasySwoole\HttpClient\Bean\CURLFile('file',__FILE__);

// 設置表單的名稱
$file->setName('file');

// 設置要文件的路徑

$file->setPath(__FILE__);

// 設置文件總大小
$file->setLength(filesize(__FILE__));

// 設置offset(分片上傳的關鍵)
$file->setOffset(0);

// 設置文件類型
$file->setType('image/png');

/** @var \EasySwoole\HttpClient\HttpClient $client **/
$client->post([
    'file' => $file
]);

響應

以上快速發起http請求成功后,如(GETPOST),將會返回EasySwoole\HttpClient\Bean\Response

獲取響應體

/** @var \EasySwoole\HttpClient\Bean\Response $response **/
$response->getBody();

當響應體為json,解析:

/** @var \EasySwoole\HttpClient\Bean\Response $response **/
$response->json();

參數:

  • $assoc 默認falsefalseobjecttrue為數組。

當響應體為jsonp,解析:

/** @var \EasySwoole\HttpClient\Bean\Response $response **/
$response->jsonp();

參數:

  • $assoc 默認falsefalseobjecttrue為數組。

當響應體為xml,解析:

/** @var \EasySwoole\HttpClient\Bean\Response $response **/
$response->xml();

參數:

  • $assoc 默認falsefalseobjecttrue為數組。

獲取錯誤碼

/** @var \EasySwoole\HttpClient\Bean\Response $response **/
$response->getErrCode();

獲取錯誤信息

/** @var \EasySwoole\HttpClient\Bean\Response $response **/
$response->getErrMsg();

獲取響應狀態碼

/** @var \EasySwoole\HttpClient\Bean\Response $response **/
$response->getStatusCode();

獲取響應頭及設置的Cookie

/** @var \EasySwoole\HttpClient\Bean\Response $response **/
$response->getSetCookieHeaders();

獲取請求的Cookie及響應頭

/** @var \EasySwoole\HttpClient\Bean\Response $response **/
$response->getCookies();

WebSocket-Client

$client = new \EasySwoole\HttpClient\HttpClient('127.0.0.1:9501');
$upgradeResult = $client->upgrade(true);
$frame = new \Swoole\WebSocket\Frame();
//設置發送的消息幀
$frame->data = json_encode(['action' => 'hello','content'=>['a'=>1]]);
$pushResult = $client->push($frame);
$recvFrame = $client->recv();
//將返回bool或一個消息幀,可自行判斷
var_dump($recvFrame);

recv只會接收一次服務器的消息,如果需要一直接收,請增加while(1)死循環。

亚洲精品成人_精品成人一区_999视频在线播放_免费黄色在线_亚洲成人久久久_久久www免费视频
  • <kbd id="eqi2k"><code id="eqi2k"></code></kbd><cite id="eqi2k"><tbody id="eqi2k"></tbody></cite>
    日本亚洲自拍| 亚洲欧洲一二三| 精品午夜一区二区| 欧美性色黄大片人与善| 午夜精品美女久久久久av福利| 亚洲一区二区三区免费看| 国产在线欧美日韩| 新狼窝色av性久久久久久| 国产欧美日韩亚洲| 亚洲欧洲一区二区在线观看| 在线欧美一区| 国产精品一区视频| 中文字幕中文字幕在线中一区高清| 今天的高清视频免费播放成人| 久久久久久久久久码影片| 国内不卡一区二区三区| 中文字幕一区二区三区四区五区六区| 99在线精品免费视频九九视| 国产在线精品二区| 欧美日韩精品综合| 国产成人精品日本亚洲11| 一本一本a久久| 久久综合五月| 欧美在线播放| 国产伦精品一区二区三区照片91| 先锋影音网一区| 久久久夜夜夜| 欧美国产精品| 精品国产乱码久久久久久郑州公司| 亚洲一区三区电影在线观看| 久久久久高清| 欧美精品二区三区四区免费看视频| 免费一区视频| 欧美日韩国产高清| 精品免费国产| 亚洲综合精品四区| 小说区图片区图片区另类灬| 亚洲影院一区| 欧美激情自拍| 日本高清视频一区二区三区| 蜜乳av另类精品一区二区| 午夜精品视频在线观看一区二区| 亚洲综合精品四区| 欧美特黄a级高清免费大片a级| 国产视频99| 亚洲女优在线| 亚洲国产精品久久久久婷婷老年 | 欧美精品导航| 日本不卡一区二区三区视频| 久久riav二区三区| 好吊色欧美一区二区三区四区| 久久综合狠狠综合久久综青草| 99精品国产99久久久久久福利| 亚洲精美视频| 欧美第一黄网| 国产一区二区在线观看免费播放| 国产亚洲欧洲| 在线国产欧美| 欧美一区二区三区在线播放| 欧美日本韩国国产| 国产在线欧美日韩| 国产91aaa| 91青青草免费在线看| 99精品国产一区二区青青牛奶| 欧美 日韩 国产精品免费观看| 欧美午夜欧美| 日本不卡二区高清三区| 久久精品国产精品国产精品污| 久久久国产精品一区二区三区| 99亚洲视频| 在线综合视频| 国产欧美午夜| 一区二区三区精品国产| 亚洲国产日韩欧美一区二区三区| 欧美一区二区三区四区在线观看地址 | 99国产在线| 91九色对白| 久久三级福利| 成人综合电影| 精品高清视频| 日产精品久久久一区二区| 欧美性色黄大片人与善| 日韩精品一区二区三区色偷偷| 欧美三级网色| 亚洲日本一区二区三区在线不卡 | 欧美日韩中文国产一区发布| 欧美日韩精品不卡| 日日夜夜精品网站| 欧美一区亚洲| 在线播放一区| 销魂美女一区二区三区视频在线| 国产伦精品一区二区三区照片91 | 麻豆成人av| 欧美三级网色| 亚洲精品欧美精品| 欧美午夜电影在线观看| 亚洲日本国产| 老司机午夜免费精品视频| 国产伦视频一区二区三区| 久久国产精品久久| 亚洲国产激情一区二区三区| 午夜精品剧场| 国产欧美一级| 超碰97网站| 人偷久久久久久久偷女厕| 欧美国产视频在线观看| 亚洲欧洲日夜超级视频| 久久午夜精品一区二区| 精品视频一区在线| 欧美fxxxxxx另类| 亚洲一区二区三区高清不卡| av成人午夜| 亚洲欧洲三级| 亚洲自拍另类| 日韩视频在线观看国产| 亚洲小说欧美另类婷婷| 97人人澡人人爽| 日韩在线观看电影完整版高清免费| 欧美日韩免费| 国产富婆一区二区三区| 伊人精品久久久久7777| 国产精品一区二区三区免费观看| 精品网站在线看| 亚洲视频中文| 精品欧美日韩在线| 亚洲高清激情| 麻豆成人av| 国产麻豆日韩| 在线免费一区| 成人羞羞视频免费| 欧美精品观看| 久久亚洲一区二区| 99爱精品视频| 先锋影音日韩| 成人h在线播放| 激情综合在线| 日韩中文字幕一区二区| 香蕉亚洲视频| 国产精品国码视频| 久久久久国产精品视频| 激情婷婷欧美| 奇米888一区二区三区| 国产精品三区www17con| 亚洲日本精品一区| 国产伦精品一区二区三区高清版| 国内综合精品午夜久久资源| 久久av一区二区| 亚洲免费在线| 黄色成人91| 婷婷精品国产一区二区三区日韩| 久久精品人人做人人爽电影蜜月| 在线一区亚洲| 另类视频在线观看+1080p| 性久久久久久| 亚洲人成久久| 欧美日本国产精品| 欧美不卡在线一区二区三区| 裸体一区二区| 亚洲黄色一区二区三区| 夜夜爽99久久国产综合精品女不卡 | 老司机精品导航| 亚洲茄子视频| 欧美国产高潮xxxx1819| 日本不卡高清视频一区| 国产日韩在线一区二区三区| 国产精品人人爽人人做我的可爱| 影音先锋在线亚洲| 欧美尤物一区| 女女同性女同一区二区三区91| 久久精品成人一区二区三区蜜臀| 激情偷拍久久| 亚洲成人资源| 国产精品v欧美精品v日本精品动漫| 欧美日韩精品综合| 玖玖玖精品中文字幕| 国产精品视频入口| 久久一区视频| 97视频中文字幕| 久久久精品五月天| 久久久久久久尹人综合网亚洲| 一区二区日本视频| 日韩午夜黄色| 国产精品一区在线观看| 一区二区免费在线视频| 一区二区三区偷拍| 国产伦精品一区二区三区视频孕妇| 亚洲国产mv| 国产精品免费看| 久久国产精品久久精品国产| 香蕉国产精品偷在线观看不卡| 国产一区二区黄色| 免费久久99精品国产自在现线 | 久久成人一区| 2022国产精品| 国产伦精品一区二区三区| 免费一区二区三区| 亚洲三区四区| 精品1区2区3区4区| 国产精品一区二区三区免费观看| 久久久亚洲一区|