【问题标题】:prevent submission of contact form to .net core web api阻止向 .net core web api 提交联系表单
【发布时间】:2018-05-17 09:41:17
【问题描述】:

我创建了一个网站,其中包含一个向我发送电子邮件的联系表单,我想要实现的操作是,当任何用户(不必登录)提交该联系表单时,防止那个表格再提交一段时间,这是为了防止垃圾邮件。 我一直在浏览 JWT 令牌,并考虑在用户提交该表单后使用令牌进行验证,但我不知道这是否是一个可能的解决方案,我想知道是否有另一种方法。 我将 C# Web Api 用于我的后端,并在我的客户端应用程序中使用 Angular 5。

【问题讨论】:

    标签: c# asp.net-core jwt asp.net-core-webapi


    【解决方案1】:

    我认为你应该使用Google recapcha

    因为您在前端开发中提到了 Angular 5。您可以使用此ngx-recaptcha 在客户端生成验证码,并在后端验证生成的 recapcha 令牌。

    流程应该是:

    • 用户将信息填写到所需的表格中。
    • 用户点击提交按钮(实施盲检)。
    • 用户点击提交按钮后,应该有一个由 Google recaptcha 服务生成的令牌。
    • 在请求中使用 recaptcha 令牌提交用户信息。
    • 在后端,验证重新验证码令牌(使用带有客户端密码、客户端 ID 的 Google 服务)
    • 如果令牌有效,则将表单信息保存到数据库。
    • 如果没有,请阻止该操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-14
      • 1970-01-01
      • 1970-01-01
      • 2018-11-07
      • 2020-10-06
      • 2017-02-10
      • 2016-02-20
      • 1970-01-01
      相关资源
      最近更新 更多