打开什么网址能通过邮箱绑定能找回指尖刀塔神武手游解除帐号绑定密码

微信绑定邮箱了,怎么找回微信帐号_百度知道
微信绑定邮箱了,怎么找回微信帐号
一、微信绑定邮箱的,点击从邮箱设置重置,然后弹出网页,在网页填写绑定的邮箱地址,在邮箱查收重置密码的邮件,点击邮件的网页链接地址,根据提示重设密码。二、微信(英文名:wechat)是腾讯公司于日推出的一个为智能终端提供即时通讯服务的免费应用程序,微信支持跨通信运营商、跨操作系统平台通过网络快速发送免费(需消耗少量网络流量)语音短信、视频、图片和文字,同时,也可以使用通过共享流媒体内容的资料和基于位置的社交插件“摇一摇”、“漂流瓶”、“朋友圈”、”公众平台“、”语音记事本“等服务插件。 三、微信提供公众平台、朋友圈、消息推送等功能,用户可以通过“摇一摇”、“搜索号码”、“附近的人”、扫二维码方式添加好友和关注公众平台,同时微信将内容分享给好友以及将用户看到的精彩内容分享到微信朋友圈。
采纳率:93%
你好! 可以用邮箱登陆微信后 在我的账号那查看微信号
本回答被提问者采纳
登录mp.weixin.qq.com`点击找回密码即可按照提示找回
为您推荐:
其他类似问题
您可能关注的内容
邮箱的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。京东商城如何通过邮箱找回用户名?_百度知道
京东商城如何通过邮箱找回用户名?
我只知道邮箱(新注册时,说此邮箱已使用),能不能找回用户名?或者能不能通过邮箱登录?
京东用户名是不需要找回的。京东商城用户在登录时,可以选择使用邮箱账号和手机号码登录,登陆成功之后即可查看到用户名,具体步骤如下:1、打开京东商城用户登录页面,输入邮箱或者手机号码登录。2、登陆成功之后,点击“我的京东-账户设置-个人信息”选项。3、打开个人信息页面,在该页面右侧即可查看到京东商城个人用户名。
电建行业职工
可以,直接输入认证邮箱,找回就可以,联系客服找回也是可以的
本回答被提问者采纳
为您推荐:
其他类似问题
您可能关注的内容
京东商城的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Java实现邮箱找回密码实例代码
转载 & & 作者:智慧云端日记
本篇文章主要介绍了Java实现邮箱找回密码实例代码,可以通过邮箱找回丢失密码,具有一定的参考价值,有需要的可以了解一下。
通过邮件找回密码功能的实现
1、最近开发一个系统,有个需求就是,忘记密码后通过邮箱找回。现在的系统在注册的时候都会强制输入邮箱,其一目的就是 通过邮件绑定找回,可以进行密码找回。通过java发送邮件的功能我就不说了,重点讲找回密码。
2、参考别人的思路:发送邮件→请求邮件里的URL→验证url→{验证成功修改密码,不成功跳转到失败页面}
重点就是如何生成这个url和如何解析这个url.
需要注意的是一个url只能修改一次密码,当同一帐号发送多封邮件,只有最后一封邮件的url 邮箱
&3、加密能防止伪造攻击,一次url只能验证一次,并且绑定了用户。生成url:&& 可以用UUID生成随机密钥。
数字签名 = MD5(用户名+'′+过期时间+‘′+过期时间+‘'+密钥key)
数据库字段(用户名(主键),密钥key,过期时间)
url参数(用户名,数字签名) ,密钥key的生成:在每一个用户找回密码时候为这个用户生成一个密钥key ,
生成过期时间,生成数字签名,生成url,发送邮件.&& AddU(用户名,密钥key,过期时间)
使用到的数据库如下 :
找回邮箱密码代码如下:
package com.soq.card.web.
import java.sql.T
import java.util.L
import java.util.UUID;
import org.hibernate.C
import org.hibernate.S
import org.hibernate.SessionF
import org.hibernate.criterion.R
import org.springframework.orm.hibernate3.HibernateT
import com.soq.card.biz.UserH
import com.soq.card.entity.U
import com.soq.card.tools.DB
import com.soq.card.tools.M
import com.soq.card.tools.Md5;
import com.soq.card.web.base.BaseA
* @author javen
public class PassEmailAction extends BaseAction {
private UserHander userH
private String userN
public String sendmail() {
HibernateTemplate ht = this.getUserHander().getUsersDAO().getHibernateTemplate();
SessionFactory factory = ht.getSessionFactory();
Session session = factory.openSession();
Criteria criteria = session.createCriteria(Users.class);
criteria.add(Restrictions.eq("loginName", email));
List&Users& list = criteria.list();
if (list.size() & 0) {
users=list.get(0);
Mail mail = new Mail();
String secretKey = UUID.randomUUID().toString(); // 密钥
Timestamp outDate = new Timestamp(System.currentTimeMillis() + 30 * 60 * 1000);// 30分钟后过期
long date = outDate.getTime() / 1000 * 1000;// 忽略毫秒数 mySql 取出时间是忽略毫秒数的
DBhepler bhepler=new DBhepler();
String sql="update users set outDate=?,validataCode=? where loginName=?;";
String str[] ={outDate+"",secretKey,users.getLoginName()};
bhepler.AddU(sql, str);
//this.getUserHander().getUsersDAO().getHibernateTemplate().update(users); // 保存到数据库
System.out.println("
UserName&&&& "+users.getUserName());
String key =users.getUserName() + "$" + date + "$" + secretK
System.out.println(" key&&&"+key);
String digitalSignature = Md5.md5(key);// 数字签名
String path = this.getRequest().getContextPath();
String basePath = this.getRequest().getScheme() + "://"
+ this.getRequest().getServerName() + ":"
+ this.getRequest().getServerPort() + path + "/";
String resetPassHref = basePath + "checkLink?sid="
+ digitalSignature +"&userName="+users.getUserName();
String emailContent = "请勿回复本邮件.点击下面的链接,重设密码&br/&&a href="
+ resetPassHref + " target='_BLANK'&" + resetPassHref
+ "&/a& 或者
&a href=" + resetPassHref
+ " target='_BLANK'&点击我重新设置密码&/a&"
+ "&br/&tips:本邮件超过30分钟,链接将会失效,需要重新申请'找回密码'" + key
+ "\t" + digitalS
mail.setTo(email);
mail.setFrom("XX");// 你的邮箱
mail.setHost("smtp.163.com");
mail.setUsername("");// 用户
mail.setPassword("CXXX");// 密码
mail.setSubject("[二维码名片]找回您的账户密码");
mail.setContent(emailContent);
if (mail.sendMail()) {
System.out.println(" 发送成功");
this.getRequest().setAttribute("mesg", "重置密码邮件已经发送,请登陆邮箱进行重置!");
return "sendMail";
this.getRequest().setAttribute("mesg", "用户名不存在,你不会忘记邮箱了吧?");
return "noUser";
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
public String checkResetLink() {
System.out.println("sid&&&" + sid);
if (sid.equals("") || userName.equals("")) {
this.getRequest().setAttribute("mesg", "链接不完整,请重新生成");
System.out.println("&&&&& null");
return "error";
HibernateTemplate ht = this.getUserHander().getUsersDAO().getHibernateTemplate();
SessionFactory factory = ht.getSessionFactory();
Session session = factory.openSession();
Criteria criteria = session.createCriteria(Users.class);
criteria.add(Restrictions.eq("userName", userName));
List&Users& list = criteria.list();
if (list.size()&0) {
users=list.get(0);
Timestamp outDate = (Timestamp) users.getOutDate();
System.out.println("outDate&&&"+outDate);
if(outDate.getTime() &= System.currentTimeMillis()){ //表示已经过期
this.getRequest().setAttribute("mesg", "链接已经过期,请重新申请找回密码.");
System.out.println("时间 超时");
return "error";
String key = users.getUserName()+"$"+outDate.getTime()/+"$"+users.getValidataCode();//数字签名
System.out.println("key link》》"+key);
String digitalSignature = Md5.md5(key);// 数字签名
System.out.println("digitalSignature&&&&"+digitalSignature);
if(!digitalSignature.equals(sid)) {
this.getRequest().setAttribute("mesg", "链接不正确,是否已经过期了?重新申请吧.");
System.out.println("标示不正确");
return "error";
//链接验证通过 转到修改密码页面
this.getRequest().setAttribute("user", users);
return "success";
this.getRequest().setAttribute("mesg", "链接错误,无法找到匹配用户,请重新申请找回密码.");
System.out.println("用户不存在");
return "error";
public Users getUsers() {
public void setUsers(Users users) {
this.users =
public UserHander getUserHander() {
return userH
public void setUserHander(UserHander userHander) {
this.userHander = userH
public String getEmail() {
public void setEmail(String email) {
this.email =
public String getSid() {
public void setSid(String sid) {
this.sid =
public String getUserName() {
return userN
public void setUserName(String userName) {
this.userName = userN
补充1:Timestamp类型对象在保存到数据的时候 毫秒精度会丢失。比如: 10:30:10.234& 存到mysql数据库的时候 变成
10:30:10.0。时间变得不相同了,sid 匹配的时候不会相等。 所以我做了忽略精度的操作。
补充2:解决linux下面title中文乱码
sun.misc.BASE64Encoder enc = new sun.misc.BASE64Encoder();
mailMessage.setSubject(MimeUtility.encodeText(mailInfo.getSubject(), "UTF-8", "B"));
//解决linux邮件title乱码
补充3:怎么不直接把sid插入到users表呢。验证的时候直接比较sid就ok了。
源码下载地址:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具通过邮件找回密码功能的实现
1、最近开发一个系统,有个需求就是,忘记密码后通过邮箱找回。现在的系统在注册的时候都会强制输入邮箱,其一目的就是 通过邮件绑定找回,可以进行密码找回。通过java发送邮件的功能我就不说了,重点讲找回密码。
2、参考别人的思路:发送邮件&请求邮件里的URL&验证url&{验证成功修改密码,不成功跳转到失败页面}
重点就是如何生成这个url和如何解析这个url.&需要注意的是一个url只能修改一次密码,当同一帐号发送多封邮件,只有最后一封邮件的url 邮箱
3、加密能防止伪造攻击,一次url只能验证一次,并且绑定了用户。生成url: &&可以用UUID生成随机密钥。&
数字签名&= MD5(用户名+'$'+过期时间+&$&+密钥key)&数据库字段(用户名(主键),密钥key,过期时间)&url参数(用户名,数字签名) ,密钥key的生成:在每一个用户找回密码时候为这个用户生成一个密钥key ,
url example:http://www.wechat68.com:80/CardSSHOK/checkLink?sid=K3xHOi4o/UihH5QYWBDfYA==&userName=123
生成过期时间,生成数字签名,生成url,发送邮件. &&AddU(用户名,密钥key,过期时间)&
使用到的数据库如下&
package com.soq.card.web.
import java.sql.T
import java.util.L
import java.util.UUID;
import org.hibernate.C
import org.hibernate.S
import org.hibernate.SessionF
import org.hibernate.criterion.R
import org.springframework.orm.hibernate3.HibernateT
import com.soq.card.biz.UserH
import com.soq.card.entity.U
import com.soq.card.tools.DB
import com.soq.card.tools.M
import com.soq.card.tools.Md5;
import com.soq.card.web.base.BaseA
* @author javen
public class PassEmailAction extends BaseAction {
private UserHander userH
private String userN
public String sendmail() {
HibernateTemplate ht = this.getUserHander().getUsersDAO().getHibernateTemplate();
SessionFactory factory = ht.getSessionFactory();
Session session = factory.openSession();
Criteria criteria = session.createCriteria(Users.class);
criteria.add(Restrictions.eq("loginName", email));
List&Users& list = criteria.list();
if (list.size() & 0) {
users=list.get(0);
Mail mail = new Mail();
String secretKey = UUID.randomUUID().toString(); // 密钥
Timestamp outDate = new Timestamp(System.currentTimeMillis() + 30 * 60 * 1000);// 30分钟后过期
long date = outDate.getTime() / 1000 * 1000;// 忽略毫秒数
mySql 取出时间是忽略毫秒数的
DBhepler bhepler=new DBhepler();
String sql="update users set outDate=?,validataCode=? where loginName=?;";
String str[] ={outDate+"",secretKey,users.getLoginName()};
bhepler.AddU(sql, str);
//this.getUserHander().getUsersDAO().getHibernateTemplate().update(users); // 保存到数据库
System.out.println("
UserName&&&& "+users.getUserName());
String key =users.getUserName() + "$" + date + "$" + secretK
System.out.println(" key&&&"+key);
String digitalSignature = Md5.md5(key);// 数字签名
String path = this.getRequest().getContextPath();
String basePath = this.getRequest().getScheme() + "://"
+ this.getRequest().getServerName() + ":"
+ this.getRequest().getServerPort() + path + "/";
String resetPassHref = basePath + "checkLink?sid="
+ digitalSignature +"&userName="+users.getUserName();
String emailContent = "请勿回复本邮件.点击下面的链接,重设密码&br/&&a href="
+ resetPassHref + " target='_BLANK'&" + resetPassHref
&a href=" + resetPassHref
+ " target='_BLANK'&点击我重新设置密码&/a&"
+ "&br/&tips:本邮件超过30分钟,链接将会失效,需要重新申请'找回密码'" + key
+ "\t" + digitalS
mail.setTo(email);
mail.setFrom("XX");// 你的邮箱
mail.setHost("smtp.163.com");
mail.setUsername("");// 用户
mail.setPassword("CXXX");// 密码
mail.setSubject("[二维码名片]找回您的账户密码");
mail.setContent(emailContent);
if (mail.sendMail()) {
System.out.println(" 发送成功");
this.getRequest().setAttribute("mesg", "重置密码邮件已经发送,请登陆邮箱进行重置!");
return "sendMail";
this.getRequest().setAttribute("mesg", "用户名不存在,你不会忘记邮箱了吧?");
return "noUser";
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
return null;
public String checkResetLink() {
System.out.println("sid&&&" + sid);
if (sid.equals("")
|| userName.equals("")) {
this.getRequest().setAttribute("mesg", "链接不完整,请重新生成");
System.out.println("&&&&& null");
return "error";
HibernateTemplate ht = this.getUserHander().getUsersDAO().getHibernateTemplate();
SessionFactory factory = ht.getSessionFactory();
Session session = factory.openSession();
Criteria criteria = session.createCriteria(Users.class);
criteria.add(Restrictions.eq("userName", userName));
List&Users& list = criteria.list();
if (list.size()&0) {
users=list.get(0);
Timestamp outDate = (Timestamp) users.getOutDate();
System.out.println("outDate&&&"+outDate);
if(outDate.getTime() &= System.currentTimeMillis()){ //表示已经过期
this.getRequest().setAttribute("mesg", "链接已经过期,请重新申请找回密码.");
System.out.println("时间 超时");
return "error";
String key = users.getUserName()+"$"+outDate.getTime()/+"$"+users.getValidataCode();//数字签名
System.out.println("key link》》"+key);
String digitalSignature = Md5.md5(key);// 数字签名
System.out.println("digitalSignature&&&&"+digitalSignature);
if(!digitalSignature.equals(sid)) {
this.getRequest().setAttribute("mesg", "链接不正确,是否已经过期了?重新申请吧.");
System.out.println("标示不正确");
return "error";
//链接验证通过 转到修改密码页面
this.getRequest().setAttribute("user", users);
return "success";
this.getRequest().setAttribute("mesg", "链接错误,无法找到匹配用户,请重新申请找回密码.");
System.out.println("用户不存在");
return "error";
public Users getUsers() {
public void setUsers(Users users) {
this.users =
public UserHander getUserHander() {
return userH
public void setUserHander(UserHander userHander) {
this.userHander = userH
public String getEmail() {
public void setEmail(String email) {
this.email =
public String getSid() {
public void setSid(String sid) {
this.sid =
public String getUserName() {
return userN
public void setUserName(String userName) {
this.userName = userN
补充1:Timestamp类型对象在保存到数据的时候 毫秒精度会丢失。比如: 10:30:10.234 &存到mysql数据库的时候 变成& 10:30:10.0。时间变得不相同了,sid 匹配的时候不会相等。 所以我做了忽略精度的操作。
补充2:解决linux下面title中文乱码
sun.misc.BASE64Encoder enc = new sun.misc.BASE64Encoder();
mailMessage.setSubject(MimeUtility.encodeText(mailInfo.getSubject(), "UTF-8", "B"));
//解决linux邮件title乱码
补充3:怎么不直接把sid插入到users表呢。验证的时候直接比较sid就ok了。
源码下载地址 &链接:http://pan.baidu.com/s/1sj1LBf3 密码:fa4x
阅读(...) 评论()
友情链接:

我要回帖

更多关于 神武手游解除帐号绑定 的文章

 

随机推荐