【问题标题】:How can I send two requests simultaneously by html code?如何通过 html 代码同时发送两个请求?
【发布时间】:2020-07-19 11:47:19
【问题描述】:

我有一个用户注册表单,用户可以填写其字段(用户名、密码、电子邮件)来注册他的帐户。我想更改此表单,当用户单击提交按钮时,它似乎单击了两次按钮。换句话说,我想同时向服务器发送两个相同的请求。我怎样才能做到这一点 ? 我的html代码是这样的:

实际上我想实现竞争条件问题。如您所知,在任何用户注册表单中,用户名必须是唯一的。我想测试 Web 应用程序是否可以进入竞争条件并存储两个相同的用户名?

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Register</title>
        <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.1/css/all.css">
        <link href="style.css" rel="stylesheet" type="text/css">

    </head>
    <body>
        <div class="register">
            <h1>Register</h1>
            <form action="register.php" method="post" autocomplete="off">
            
                <label for="username">
                    <i class="fas fa-user"></i>
                </label>
                <input type="text" name="username" placeholder="Username" id="username" required>
                <label for="password">
                    <i class="fas fa-lock"></i>
                </label>
                <input type="password" name="password" placeholder="Password" id="password" required>
                <label for="email">
                    <i class="fas fa-envelope"></i>
                </label>
                <input type="email" name="email" placeholder="Email" id="email" required>
                <input type="submit" value="Register">
                                
            
            </form>
            
        </div>
    </body>
</html>

【问题讨论】:

  • 注册后创建一个新表单并重定向到该表单如何?这将解决您的问题。
  • 对我来说闻起来像 XY problem为什么你需要两个相同的请求?这将是一件非常不寻常的事情,不仅您可以在服务器上处理两次而不是要求客户端发送两个请求,而且首先执行两次相同的用户注册听起来很奇怪(不管实施复制的地方)。这样做有什么目的?
  • 其实我想实现竞态条件问题。正如您在任何用户注册表格中所知道的,用户名必须是唯一的。我想测试 Web 应用程序是否可以进入竞争条件并存储两个相同的用户名?
  • 哦,所以这是质量保证或(自)渗透测试的一部分?请修改您的问题并包含此重要信息。谢谢。
  • 我编辑了我的问题,非常感谢您的建议

标签: html testing web-applications race-condition


【解决方案1】:

我想不出没有一些 javascript 来加倍提交的解决方案。

另一种方法是从批处理(curl)或工具(JMeter、Postman...)发布请求

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-09
    • 2011-04-14
    • 1970-01-01
    • 2011-07-01
    • 2017-12-08
    • 1970-01-01
    相关资源
    最近更新 更多