[英]Hiding responses using PHP and Curl
我很久以前重復使用卷曲功能,現在的行為與我記憶的不同。 在這種特殊情況下,我正在驗證用戶的Twitter憑據。 這是現在的代碼:
$cred = $_POST['twitter_username'].':'.$_POST['twitter_password'];
$url = "http://twitter.com/account/verify_credentials.json";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_GET, 0);
curl_setopt($ch, CURLOPT_USERPWD, $cred);
$result = curl_exec ($ch);
curl_close ($ch);
這對於身份驗證工作正常,但是將整個JSON響應輸出到瀏覽器,我不想這樣做。
我不太熟悉卷曲。 我嘗試將CURLOPT_VERBOSE設置為0和false,但都沒有工作。 我確信這是一個非常簡單的改變,但我失去了它的本質。
謝謝
你需要這個選項:
curl_setopt(CURLOPT_RETURNTRANSFER, true);
從卷曲文檔 :
CURLOPT_RETURNTRANSFER
:TRUE將傳輸作為curl_exec()返回值的字符串返回,而不是直接輸出。
我寫了這個函數來幫助簡化我的CURL請求
function curl_http_request ($url, $options)
{
$handle = curl_init($url);
curl_setopt_array($handle, $options);
ob_start();
$buffer = curl_exec($handle);
ob_end_clean();
curl_close($handle);
return $buffer;
}
使用的例子
$options = array(
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_USERPWD => $cred
);
curl_http_request($url, $options);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.