curl有一个CURLOPT_LOGIN_OPTIONS参数(--终端应用程序中的登录选项)。如何在php5-curl的php脚本中使用它?默认情况下,它没有CURLOPT_LOGIN_OPTIONS,并使用类似curl_setopt($ch,12345,"auth=PLAIN")的代码;不改变会导致卷曲行为的改变。我不会在代码中使用exec。谢谢
在PHP中,如果您想登录某个服务器,可以使用简单的设置:
curl_setopt($cURL, CURLOPT_USERPWD, "USERNAME:PASSWORD");
下面是我如何使用的一个例子:
$cURL = curl_init();
curl_setopt($cURL, CURLOPT_URL, "imaps://server.com");
curl_setopt($cURL, CURLOPT_POST, 1);
curl_setopt($cURL, CURLOPT_POSTFIELDS,
"postvar1=value1&postvar2=value2&postvar3=value3");
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cURL, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($cURL, CURLOPT_CONNECTTIMEOUT, 3);
curl_setopt($cURL, CURLOPT_TIMEOUT, 2);
curl_setopt($cURL, CURLOPT_USERPWD, "USERNAME:PASSWORD");
curl_setopt($cURL, CURLOPT_HTTPHEADER, array("auth=PLAIN"));
$output=curl_exec($cURL);
curl_close($cURL);
CURLOPT_USERPWD允许您登录到您的服务器或应用程序(如果您这样设置的话)。
如果你需要代理,还有另一种方法:
curl_setopt($cURL, CURLOPT_PROXYUSERPWD, "USERNAME:PASSWORD");
但你也需要额外的选择:
curl_setopt($cURL, CURLOPT_PROXY, '127.0.0.1'); // IP
curl_setopt($cURL, CURLOPT_PROXYPORT, '23'); // PORT
curl_setopt($cURL, CURLOPT_PROXYUSERPWD, "USERNAME:PASSWORD"); // Login
我希望这能有所帮助。