0

我们有一个内部应用程序,需要全面使用相同的用户名/密码。

但是,如果登录失败次数过多,则该帐户将被锁定为该用户名。

我们无法更改锁定,因为这也会影响面向公众的网站。

我被要求想出一种方法来本质上单击一个按钮并自动登录。

最初的研究让我想到了这个剧本……信用

<!doctype html>
    <!-- saved from url=(0014)about:internet -->

    <html>
    <title>Auto Login</title>
    </head>
    <body>
    <form id="loginForm" name="loginForm" method="post"    action="http://mail.google.com">
    <select name="uni_url" id="logServer" class="validate[required]">
    <option  class=""  value="" fbUrl=""  cookieName=""  >
            Test_en
    </option>
    </select>
    <input id="loginName" name="name" type="text" value="Username" class="" />
    <input id="loginPassword" name="password" type="password" value="ExamplePassword" class="" />
    <input type="hidden" id="loginKid" name="kid" value=""/>
                        </form>
  <script>document.loginForm.submit();</script>       
  </body></html>

...但我似乎无法让它为我工作。

所以,我找到了另一个选项,我可以使用提交按钮创建一个小的 html 文件(表单),即 - onload="form1.submit();",这基本上可以让我登录到这个网站,而无需键入任何登录信息。

不知道从哪里开始模仿这样的登录表单,需要一个好的方向才能开始。

想法?

4

1 回答 1

0

假设您现有的登录表单如下所示:

<form action="/login.php" method="post" id="loginform">
    <input type="text"     name="username" />
    <input type="password" name="password" />
    <input type="submit" />
</form>

在您的“自动登录”(实际上是一个自动提交)页面上,您想要模仿与以前相同的结构,但是:

  • 添加要提交的值(静态用户名和密码?)
  • 可以选择删除提交按钮(如果您知道您的用户启用了 JS,那么您可以摆脱)。
  • 添加一些自动为您提交表单的 JS。

这可能会给我们这样的东西:

<form action="/login.php" method="post" id="loginform">
    <input type="text"     name="username" value="gvee" />
    <input type="password" name="password" value="hunter2" />
</form>
<script type="text/javascript">document.forms[0].submit()</script>

javascript 基本上会在页面 ( ) 上查找第一个表单forms[0]并提交它。


更新

经过进一步检查,您现有的登录表单有点有趣。它不是直接提交表单,而是调用一个doLogin()设置某些隐藏属性的函数。

因此,我们应该模仿相同的行为(即调用doLogin()而不是.submit()),而不是提交表单。

这里的关键一件事是,您只想在声明函数后调用该函数。最简单的解决方案是将我们添加的一些脚本放在 HTML 的最底部。

<script type="text/javascript">doSubmit();</script>
于 2013-09-11T15:14:48.787 回答