Heim  >  Artikel  >  Backend-Entwicklung  >  So rufen Sie die API-Schnittstelle in PHP auf

So rufen Sie die API-Schnittstelle in PHP auf

尚
Original
2019-10-26 17:37:156300Durchsuche

So rufen Sie die API-Schnittstelle in PHP auf

kann per PHP aufgerufen werden, der eine Post-Anfrage simuliert.

Empfohlen: PHP-Server

2 Methoden der PHP-simulierten POST-Übermittlung

1, Über die Curl-Funktion

So verwenden Sie cURL zum Implementieren von Get- und Post-Anfragen in PHP

$post_data = array();  
$post_data['clientname'] = "test08";  
$post_data['clientpasswd'] = "test08";  
$post_data['submit'] = "submit";  
$url='http://xxx.xxx.xxx.xx/xx/xxx/top.php';  
$o="";  
foreach ($post_data as $k=>$v)  
{  
    $o.= "$k=".urlencode($v)."&";  
}  
$post_data=substr($o,0,-1);  
$ch = curl_init();  
curl_setopt($ch, CURLOPT_POST, 1);  
curl_setopt($ch, CURLOPT_HEADER, 0);  
curl_setopt($ch, CURLOPT_URL,$url);  
//为了支持cookie  
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');  
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);  
$result = curl_exec($ch);

2. Über fsockopen.

fsockopen – Öffnen Sie eine Netzwerkverbindung oder eine Unix-Socket-Verbindung

$URL=‘http://xxx.xxx.xxx.xx/xx/xxx/top.php';  
$post_data['clientname'] = "test08";  
$post_data['clientpasswd'] = "test08";  
$post_data['submit'] = "ログイン";  
$referrer="";  
// parsing the given URL  
$URL_Info=parse_url($URL);  
// Building referrer  
if($referrer=="") // if not given use this script as referrer  
$referrer=$_SERVER["SCRIPT_URI"];  
   
// making string from $data  
foreach($post_data as $key=>$value)  
$values[]="$key=".urlencode($value);  
   
$data_string=implode("&",$values);  
// Find out which port is needed - if not given use standard (=80)  
if(!isset($URL_Info["port"]))  
$URL_Info["port"]=80;  
// building POST-request:  
$request.="POST ".$URL_Info["path"]." HTTP/1.1\n";  
$request.="Host: ".$URL_Info["host"]."\n";  
$request.="Referer: $referrer\n";  
$request.="Content-type: application/x-www-form-urlencoded\n";  
$request.="Content-length: ".strlen($data_string)."\n";  
$request.="Connection: close\n";  
$request.="\n";  
$request.=$data_string."\n";  
$fp = fsockopen($URL_Info["host"],$URL_Info["port"]);  
fputs($fp, $request);  
while(!feof($fp)) {  
    $result .= fgets($fp, 128);  
}  
fclose($fp);

Das obige ist der detaillierte Inhalt vonSo rufen Sie die API-Schnittstelle in PHP auf. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn