2016-05-16 20 views
0

我是新來的web開發的REST API的風格。我必須發送2個Cookie以及1個REST API。如何通過點擊鏈接將它們發送到一起?PHP:如何通過點擊一個鏈接,發送與REST API調用餅乾?

例如,如果用戶點擊該鏈接時,它應該使REST API調用,並與它一起發送的cookie。我知道如何在cURL中做到這一點,但我很困惑我如何通過鏈接觸發它。理想情況下,用戶應該可以通過點擊鏈接下載一個zip文件。該鏈接應調用REST API併發送2個Cookie以獲取zip文件。我可以使用下面的代碼獲得zip文件的原始代碼,但無法通過單擊鏈接來實現。

$getResultsDetails = curl_init(); 
    $getResults_service_url = '<URL of the REST API call>'; 
    curl_setopt($getResultsDetails,CURLOPT_URL,$getResults_service_url); 
    curl_setopt($getResultsDetails,CURLOPT_COOKIE,"LWSSO_COOKIE_KEY=".$LWSSO_COOKIE_KEY.";QCSession=".$QCSession); 
     curl_setopt($getResultsDetails, CURLOPT_RETURNTRANSFER, true); //get response 
     $getResults_service_url_response = curl_exec($getResultsDetails); 
     curl_setopt($getResultsDetails, CURLOPT_RETURNTRANSFER, true); 
     if ($getResults_service_url_response === false) { 
      $info = curl_getinfo($getResultsDetails); 
      curl_close($getResultsDetails); 
      die('error occured during curl exec. Additional info: ' . var_export($info)); 
     } 
     curl_close($getResultsDetails); 

任何想法,我可以如何實現這一點?

回答

1

這是大多this但增加重複「我該怎麼辦?」部分。所以,繼續添加這個問題的答案。

只是用一個鏈接到你的用戶定向到PHP腳本進行調用。

您可以通過兩種方式做到這一點:

<a href="yourCurlScript.php">click me</a> 

關於如何做餅乾的部分細節讀this answer。以同樣的方式

from jquery docs

$.ajax({ 
    type: "POST", 
    url: "path/to/yourCurlScript.php", 
    data: data, 
    success: success, 
    dataType: dataType 
}); 

相同的腳本調用,所以過程餅乾:

2.使用jQuery使用Ajax調用。

最佳的用戶體驗,我可能會選擇號碼2。我不知道它是什麼,您選擇打算從API獲取,但你可以把它管道到使用一個文件。