Estoy intentando conectarme a la API de Webtrend utilizando PHP pero no he podido autenticarme.Autenticación de API de Webtrends PHP
El ejemplo dado en la documentación de la WT es para .NET o Ruby, el ejemplo .Net es así:
var svc = new WebClient();
svc.Credentials = new NetworkCredential("yourWebTrendsAccount\WebTrendsUserName", "yourSuperSecretPassword");
svc.DownloadStringCompleted += svc_DownloadStringCompleted;
svc.DownloadStringAsync(new Uri(baseUri));
No estoy familiarizado con .NET, pero ¿hay un equivalente de esa clase WebClient en PHP?
que han estado tratando de autenticar usando CURL usando
username = "my_account_name/my_login_name"
password = "my_password"
pero hasta ahora sin suerte. Aparece un mensaje de error que dice que los parámetros no son correctos.
Actualización: Agregar código
$username=urlencode('my_account_name\my_login_name');
$password="my_password";
$postdata="username=$username&password=$password";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL,"https://ws.webtrends.com/v2/ReportService/profiles/XXXXXXXX/reports/XXXXXXXX/?totals=all&period=2011w14&format=xml");
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, TRUE);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt ($ch, CURLOPT_TIMEOUT, 60);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt ($ch, CURLOPT_POST, 1);
$result = curl_exec ($ch);
curl_close($ch);
var_dump($result);
también probé
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
pero sin suerte hasta ahora.
muestran detalles de su script php – Ibu
He arreglado el problema. después de mirar el mensaje de error en los encabezados http ('problema de certificado SSL, verifique que el certificado CA esté bien') Agregué estas líneas al código y ahora funciona: – Jon
curl_setopt ($ ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt ($ ch, CURLOPT_SSL_VERIFYPEER, 0); – Jon