ホームページ  >  記事  >  バックエンド開発  >  インターフェイスメソッドを呼び出すためにcurlを使用したphpのgetメソッドとpostメソッドの詳細な説明

インターフェイスメソッドを呼び出すためにcurlを使用したphpのgetメソッドとpostメソッドの詳細な説明

伊谢尔伦
伊谢尔伦オリジナル
2017-07-03 10:33:463136ブラウズ

最初はクライアント実行メソッドです ApiModel.php:

<?php 
/**
   * 模拟post进行url请求
   * @param string $url
   * @param array $post_data
   */
  function request_post($url = &#39;&#39;,$ispost=true, $post_data = array()) {
    if (empty($url) || empty($post_data)) {
      return false;
    }
    
    $o = "";
    foreach ( $post_data as $k => $v ) 
    { 
      $o.= "$k=" . urlencode( $v ). "&" ;
    }
    $post_data = substr($o,0,-1);
    $key=md5(base64_encode($post_data));
    if($ispost){
      $url=$url;
    }else{
      $url = $url.&#39;?&#39;.$post_data;
    }
    
    
    $curlPost = &#39;key=&#39;.$key;
    header("Content-type: text/html; charset=utf-8");
    $ch = curl_init();//初始化curl
    curl_setopt($ch, CURLOPT_URL,$url);//抓取指定网页
    curl_setopt($ch, CURLOPT_HEADER, 0);//设置header
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
    if($ispost){
      curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
      curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
    }
    $data = curl_exec($ch);//运行curl
    curl_close($ch);
    return $data;
  }
  ?>

クライアントはメソッドを呼び出します ここで基本情報を設定できます api.php:

<?php 
require &#39;ApiModel.php&#39;;
function testAction(){
    $url = &#39;接口地址&#39;;
    $post_data[&#39;appid&#39;]    = &#39;10&#39;;
    $post_data[&#39;appkey&#39;]   = &#39;cmbohpffXVR03nIpkkQXaAA1Vf5nO4nQ&#39;;
    $post_data[&#39;member_name&#39;] = &#39;zsjs124&#39;;
    $post_data[&#39;password&#39;]  = &#39;123456&#39;;
    $post_data[&#39;email&#39;]  = &#39;zsjs124@126.com&#39;;
    //$post_data = array();
    $res = request_post($url,$ispost=true,$post_data);    
    print_r($res);

  }
testAction();
?>

サーバーのインターフェース関数 test.php:

<?php 
function serverapi(){
  $key=&#39;57173d6ad842d807443ee0db91fed323&#39;;
  if($_GET&&$_GET[&#39;appkey&#39;]==&#39;cmbohpffXVR03nIpkkQXaAA1Vf5nO4nQ&#39;||$_POST&&$_POST[&#39;key&#39;]===$key){
    $arr=array(&#39;name&#39;=>&#39;huanglu&#39;,&#39;password&#39;=>&#39;123456&#39;);
    echo json_encode($arr);
  }else{
    exit(&#39;非法访问!&#39;);
  }
}
serverapi();
?>

以上がインターフェイスメソッドを呼び出すためにcurlを使用したphpのgetメソッドとpostメソッドの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。