久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      關于我用PHP實現(xiàn)請求模擬的一件趣事!

      下面由Laravel教程欄目給大家介紹關于實現(xiàn)PHP請求模擬的一件趣事,希望對大家有所幫助!

      通過簡單實現(xiàn) PHP 請求模擬賺了 50 元

      這個周末發(fā)生了一件有趣的事情:在群里看到有人需要做 PHP 開發(fā)的協(xié)助,并承諾有報酬,我自薦后解決了問題,獲得了 50 元。

      接下來我詳細的說說整個事情的經過。

      周六下班后打開了 QQ,在瀏覽群消息的時候看到這樣一句話:“群里有沒有會寫 PHP 代碼的,有償”。我立馬添加他的 QQ,并告訴他我是做 PHP 開發(fā)的,我可以提供幫助。

      周日早上收到了他的回復,他給了我一個文檔,讓我看看是否能實現(xiàn),我仔細瀏覽了整個文檔,發(fā)現(xiàn)是第三方接口文檔,我告訴他對接這種接口很簡單,想知道他的具體業(yè)務是什么,而他告訴我只需要幫忙調通就行,以下是我們的對話截圖:

      關于我用PHP實現(xiàn)請求模擬的一件趣事!

      php入門到就業(yè)線上直播課:進入學習
      Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用

      關于我用PHP實現(xiàn)請求模擬的一件趣事!

      雖然他出的錢并不多,但是當時我恰好沒有什么事情,就接了,我拷貝了之前寫的代碼,然后再改一下,很快就調通了,截圖給他看,他確認沒有問題后給我發(fā)了 50 元的紅包,我也把文件發(fā)給他了,整個事情就結束了。

      接下來我要說的是這個事情背后的技術問題。

      首先他是懂 PHP 開發(fā)的,是在開發(fā)中遇到了難題,不知道是他懶得去搜索還是沒有搜索到解決方案,而這個難題實際上就是一個 PHP 實現(xiàn)請求模擬的小問題。

      現(xiàn)在我把整個文件代碼分享出來,希望對遇到同樣問題的人有一些幫助,實現(xiàn)代碼:

      <?php class HttpClientUtil {     public function sendRequest($type = '', $url = '', $data = [], $timeout = 60)     {         try {             $type = strtoupper($type);             $curl = curl_init();             curl_setopt($curl, CURLOPT_URL, $url);//設置請求鏈接             curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//不直接輸出頁面             curl_setopt($curl, CURLOPT_HEADER, 0);//獲取響應頭向下             curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);   //請求超時時間,單位:秒             curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1');             if (substr($url, 0, 5) == 'https') { //自動判斷是否是https提交                 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);  // https請求 不驗證證書和hosts                 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);             }             curl_setopt($curl, CURLOPT_HTTPHEADER, ['Content-Type:application/json']);             switch ($type) {                 case "GET" :                     curl_setopt($curl, CURLOPT_HTTPGET, true);                     break;                 case "POST":                     curl_setopt($curl, CURLOPT_POST, true);                     curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));                     break;                 case "PUT" :                     curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");                     curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));                     break;                 case "DELETE":                     curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "DELETE");                     curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));                     break;             }             $result = curl_exec($curl);             $err_code = curl_errno($curl);             $curlInfo = curl_getinfo($curl);             curl_close($curl);             if ($err_code) {                 return false;             }             if ($curlInfo['http_code'] == 200) { //只有200狀態(tài)才返回數(shù)據(jù)                 return json_decode($result, true);             }             return false;         } catch (Exception $e) {             throw new Exception($e->getMessage());         }     }     public function createSign($data){         // 拼接         $dataStr = '';         foreach ($data as $key=>$value){             $dataStr.="{$key}={$value}&";         }         // 拼接商戶密鑰         $dataStr.='access_token=***B8';         // 加密         $sign =strtoupper(MD5($dataStr));         $data['sign']=$sign;         return $data;     } } $api = new HttpClientUtil(); $url = 'http://***/order/pay'; $data=[     'userName'=>'test',     'version'=>'2.0',     'cardName'=>'張三',     'cardNum'=>'20932402940189310293',     'openBank'=>'招商銀行',     'amount'=>'10.00',     'outOrderId'=>'JD123123123',     'returnUrl'=>'/', ]; $res = $api->sendRequest('post',$url,$api->createSign($data)); print_r($res);
      登錄后復制

      推薦學習:《PHP視頻教程》

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號