Ho il seguente codice per l'accesso in un'applicazione sito esterno (asp.net app) da un modulo di login sito locale (scritto in PHP):php curl - valore distacco asp.net viewstate
<?php
$curl_connection = curl_init('www.external.com/login.aspx');
curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($curl_connection, CURLOPT_USERAGENT,
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, 1);
// Post data array
$post_data['LoginControl$UserName'] = 'ExampleUName';
$post_data['LoginControl$Password'] = 'ExamplePWord';
// Add form fields into an array to get ready to post
foreach ($post_data as $key => $value)
{
$post_items[] = $key . '=' . $value;
}
$post_string = implode ('&', $post_items);
// Tell cURL which string to post
curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string);
// Execute and post
$result = curl_exec($curl_connection);
?>
I viene indirizzato al modulo di accesso del sito esterno anziché essere indirizzato all'applicazione registrata. Penso che il problema sia che devo passare i valori del viewstate, ma non sono sicuro di come farlo?
Non ho il controllo dell'applicazione esterna. Ma vogliamo che gli utenti siano in grado di accedere all'applicazione tramite il nostro sito Web, mantenere il branding ecc.
Recentemente ho pubblicato un paio di altri thread sull'uso di php cURL, ma ora sono sul palco dove penso che il problema sia lo stato di visualizzazione ...
Grazie, Mark.
Grazie - Aggiunto quelli, ma ancora appena stato indirizzato al form di login sul sito esterno .. –