页内表单不会将数据发送到远程托管的aspx表单

时间:2014-08-23 20:05:39

标签: html asp.net forms linked-list

我有一个html表单,其中的操作链接到远程托管的aspx表单。 html表单模仿aspx表单的所有输入名称,id,值等。

在使用正确的登录数据提交html登录表单后,页面将链接到原始登录表单,而只输入用户名数据,而不是处理数据并重定向到目标链接。在再次填写正确的信息后,用户就可以登录。

通过检查网站上同一登录表单的其他实例的功能并遇到同样的问题,我猜测该问题是远程aspx文件中固有的,而不是html表单。

该表单一直工作到大约一周前,当它立即开始表现时,没有对代码进行任何更改。

直播网站位于http://blinqphoto.com

感谢您的回复,这让我很难过。 请在下面找到html表单和相应的aspx表单。

HTML:

<form style="" name="LoginForm" method="post" action="https://acct.blinqphoto.com/loginframe.aspxredirect=http%3a%2f%2fwww.blinqphoto.com%2fmy-albums%2f" id="LoginForm">

<div>
<input name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJMjU0ODEwOTIzZGR61068oyJyEBB4UM9Gc8Fxx4225NLn2XmKWX95/vl6Zg==" type="hidden">
</div>

<div>
<input name="__EVENTVALIDATION" id="__EVENTVALIDATION"value="/wEWBAL1/8vwCgKTqJrlAQKN8oRJAv6M0J8PQkj11RCPtUGzghOj3yic+Mr17E559GJ73UVSHbxO9VE=" type="hidden">
</div>

<span> Email <input name="UserNameTxt" id="UserNameTxt" placeholder="example@gmail.com" type="text"></span>
<br>

<span>Password<input name="PasswordTxt" id="PasswordTxt" placeholder="password" class="password" type="password"></span>
<br>

<input name="LoginButton" value="Sign in" class="LoginButton" type="submit"><br>
</form>

ASPX:

<form style="" name="LoginForm" method="post"    action="https://acct.blinqphoto.com/loginframe.aspx?redirect=http%3a%2f%2fwww.blinqphoto.com%2fmy-albums%2f" id="LoginForm">

<div>
<input name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJMjU0ODEwOTIzZGR61068oyJyEBB4UM9Gc8Fxx4225NLn2XmKWX95/vl6Zg==" type="hidden">
</div>

<div>
<input name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWBAL1/8vwCgKTqJrlAQKN8oRJAv6M0J8PQkj11RCPtUGzghOj3yic+Mr17E559GJ73UVSHbxO9VE=" type="hidden">
</div>

<span> Email <input name="UserNameTxt" id="UserNameTxt" placeholder="example@gmail.com" type="text"></span>
<br>

 <span>Password<input name="PasswordTxt" id="PasswordTxt" placeholder="password" class="password" type="password"></span>
<br> 

<input name="LoginButton" value="Sign in" class="LoginButton" type="submit"><br>
</form>

1 个答案:

答案 0 :(得分:0)

我相信这是由.NET事件验证引起的。如果仔细观察,__ EVENTVALIDATION表单字段的值并不总是完全相同。这用于验证回发 - 例如,检查它是否来自其他URL,这正是您正在做的事情。

您需要为login.aspx页面禁用事件验证。

Page.EnableEventValidation   = false;

Is there a way to disable Event Validation for an entire page?

请注意,禁用事件验证可能会使您的网页更容易受到攻击。