我有下面的代码登录到将本地站点的登录表单,外部网站应用程序(asp.net应用程序)(用PHP编写):PHP卷曲 - 发布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);
?>
我指向外部网站的登录表单,而不是定向到登录的应用程序。我认为问题是我需要传递viewstate值,但我不知道如何去做这件事?
我无法控制外部应用程序。但我们希望用户能够通过我们的网站登录到应用程序,以保持品牌等
我已经发布了一些其他线程最近关于使用PHP cURL,但我现在在舞台上我认为视图状态是问题...
谢谢,马克。
感谢 - 增加了那些,但仍然只是被定向到登录表单上的外部网站.. – 2010-07-16 09:51:25