Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过电子邮件激活用户_Javascript_Asp.net_Http - Fatal编程技术网

Javascript 通过电子邮件激活用户

Javascript 通过电子邮件激活用户,javascript,asp.net,http,Javascript,Asp.net,Http,我对一种服务激活用户的方式很感兴趣。情况是,我填写了表格并发送了它。然后有一条消息说,如果我想继续激活过程,我应该检查我的电子邮件。在电子邮件中有一条带有激活链接的消息,如:www.theservice.com 我想知道他们怎么知道是我:) 我知道在这个场景中,发送的链接包含用户登录的散列或其他内容,以便服务器知道哪个用户进入并激活那个链接 你知道怎么做吗 编辑: 根据答案:奇怪的是,我没有在我的链接,我收到了令牌。链接只是www.myservice.com,尽管如此,该服务仍然能够激活我的帐户

我对一种服务激活用户的方式很感兴趣。情况是,我填写了表格并发送了它。然后有一条消息说,如果我想继续激活过程,我应该检查我的电子邮件。在电子邮件中有一条带有激活链接的消息,如:www.theservice.com

我想知道他们怎么知道是我:)

我知道在这个场景中,发送的链接包含用户登录的散列或其他内容,以便服务器知道哪个用户进入并激活那个链接

你知道怎么做吗

编辑:

根据答案:奇怪的是,我没有在我的链接,我收到了令牌。链接只是www.myservice.com,尽管如此,该服务仍然能够激活我的帐户


我唯一能想象它是如何工作的想法是cookie。

你可以生成一个哈希,并将其与用户id一起存储在数据库中,然后向用户的电子邮件地址发送一封电子邮件,并链接到你的站点,然后在url中放置类似于&hash=yourHashHere的内容。在您的站点上,检查数据库中是否存在哈希。如果存在,请激活数据库中的用户。您还可以添加时间戳,以便验证激活链接是否已过期

您要做的是创建与用户登录详细信息一起保存的用户激活令牌。此外,您还有一封作为令牌发送到的用户电子邮件。 电子邮件实际上是

在您拥有链接的代码中,您将检测令牌是否存在,如果不存在,您将向用户提示该令牌,通常的组合是电子邮件和令牌


请参阅此处的详细信息:

邮件消息可能包含一个带有表单的html以及其中的用户id隐藏字段。当用户单击在相应服务器上提交的链接表单时,其中隐藏字段值用于识别用户id和激活帐户

function doSubmit() {
        document.forms["form1"].submit();
    }

<form id="form1" action="www.theservice.com" method="post">
    <a href="#" onclick="doSubmit()">Activate</a>
    <input type="hidden" name="userIdForActivating" value="userId" />
</form>
函数doSubmit(){
document.forms[“form1”].submit();
}

此服务是否允许填写表单并将其发送到一台机器上,然后从另一台机器激活帐户?唯一与我的问题相关的解决方案