0
我一直試圖讓一個小PHP腳本登錄到DOTNETNUKE應用程序幾天,現在沒有用。我已經複製了標題和發佈變量,因爲它們是使用Tamper Data插件發送給Firefox的。使用Curl(或Guzzle)登錄到DOTNETNUKE應用程序
每次我送過來,我得到以下錯誤信息:
error=Your%20session%20has%20expired.%20%20Please%20try%20again
從我可以告訴它是因爲DotNetNuke的cookie不會被傳遞回來,我不知道爲什麼任何幫助將是很大的讚賞。我的GUZZLE代碼如下:
include_once(LIBRARY_PATH . '/guzzle.phar');
use Guzzle\Http\Client;
use Guzzle\Plugin\Cookie\CookiePlugin;
use Guzzle\Plugin\Cookie\CookieJar\ArrayCookieJar;
$cookiePlugin = new CookiePlugin(new ArrayCookieJar());
$client = new Client('ASPX URL CODE GOES HERE');
$client->addSubscriber($cookiePlugin);
$client->setUserAgent('Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0');
$response = $client->get('ASPX URL CODE GOES HERE')->send();
$request = $client->post('ASPX URL CODE GOES HERE', array(), array(
'__EVENTTARGET' => 'dnn$ctr383$LoginPage$SearchPage$dataPanel$ctl01$ctl13$LoginButton',
'__EVENTARGUMENT' => '',
'dnn$ReturnModuleFocus' => '',
'dnn$ModuleFocalPoint' => '',
'dnn$ModuleInvokedFromDataSearch' => '',
'dnn$ctr383$LoginPage$SearchPage$dataPanel$ctl01$ctl11$userName$mb_userName' => 'USERNAME HERE',
'dnn$ctr383$LoginPage$SearchPage$dataPanel$ctl01$ctl12$password$mb_password' => 'PASSWORD HERE',
'dnn$ctr383$LoginPage$SearchPage$dataPanel$ConfirmationSaveResponse' => '',
'dnn$ctr383$LoginPage$SearchPage$dataPanel$MinMax' => '',
'dnn$ctr383$LoginPage$SearchPage$dataPanel$dpPostBack' => '',
'ScrollTop' => '',
'__dnnVariable' => '',
'ScrollX' => '0',
'ScrollY' => '0',
'iCWindowID' => '2',
'iCRequestID' => '1',
'iCFieldsChanged' => '0',
'__VIEWSTATE' => ''
));
$response = $request->send();
echo $response;
提前致謝!
我正在處理ASP網站。然而,它不是__VIEWSTATE多數民衆贊成在它被傳遞的問題作爲一個空白,因爲你可以在我的後面的變量看到上面,我已經嘗試解析它,它似乎總是保持空白。 – Sincore