2012-11-30 30 views
7

是否有任何替代方案使用CURLOPT_HTTPHEADER & CURLOPT_USERPWD爲cURL PHP提供基本身份驗證?PHP cURL CURLOPT_HTTPHEADER&CURLOPT_USERPWD ...的基本身份驗證替代方案?

我有一個超長的密碼,所以CURLOPT_USERPWD不會工作,因爲它在256個字符截斷。

curl_setopt($data, CURLOPT_USERPWD, $username . ":" . $password); 

我想遠離使用CURLOPT_HTTPHEADER出於安全原因。

curl_setopt($data, CURLOPT_HTTPHEADER, "Authorization: Basic " . base64_encode($username . ":" . $password)); 

任何替代品?

+0

你可以通常將其附加到您的URL作爲參數,儘管可能需要強制執行HTTPS而不是HTTP –

回答

8

是什麼讓你覺得CURLOPT_HTTPHEADER由於安全原因被禁用?它接受一個數組而不是一個字符串。試試這個:

curl_setopt($data, CURLOPT_HTTPHEADER, 
      array(
       "Authorization: Basic " . base64_encode($username . ":" . $password) 
)); 
+0

對不起編輯後,以澄清。 –

+1

我沒有看到使用該選項的任何安全問題,爲什麼你想避免它?最終結果是完全一樣的。 – drew010

+0

我希望我可以使用它,但最終它在我們的捲曲實現中被禁用。 –