SASL authentication DIGEST-MD5 failed解决办法
来源:互联网 发布:网络女主播是做什么的 编辑:程序博客网 时间:2024/06/05 03:08
转载请注明出处,谢谢:http://blog.csdn.net/harryweasley/article/details/52949261
最近在维护公司一个带有聊天功能的项目,发现了一个bug,用户每次点击推送消息进入应用,就再也登录不上了,并且报如下错误:SASL authentication DIGEST-MD5 failed。
这个聊天功能,通过aSmack.jar包实现的。
调用XMPPConnection.login(String username, String password, String resource)方法来进行登录,与服务器获取连接。这里的password就是从服务器得到的token值,最后通过分析之所以出现这个bug,是因为我登录的token值和获取的token不一样了。
第一次登录的时候,客户端从服务端获取到token,利用该token进行登录了;第二次用户点击推送消息进入客户端,客户端再次从服务端获取到token,但是并没有用该token来登录服务端,而是用第一次登录的token,那么就会报这样的错误了,SASL authentication DIGEST-MD5 failed。
为了检测获取到服务的token和登录token是否一致,首先找到客户端获取到服务端的token代码,将其打印出来,然后找到xmppManager登录时候要传入的token值, XMPPConnection.login(String username, String password, String resource)
打印出这里的password,看两次是否一致,如果不一致,就说明你的token登录有问题,看看是代码的哪里出错了,导致最新的token值没有赋值到。
我自己的项目出错的原因是,UCNotificationService服务启动后,在其onCreate()方法中初始化了UCXmppManager类,而password是在UCXmppManager的构造函数赋值的,当用户点击推送消息再次打开客户端,因为UCNotificationService服务已经启动,那么它的onCreate()将不会再次执行了,所以导致新的token没有赋值给password,所以报错:SASL authentication DIGEST-MD5 failed。解决办法,就是在UCNotificationService服务的onStartCommand()方法中,将最新的从服务获取的token值复制给password。
- SASL authentication DIGEST-MD5 failed解决办法
- SASL authentication failed using mechanism DIGEST-MD5
- android Xmpp+openfire 消息推送 :SASL authentication failed using mechanism DIGEST-MD5
- SASL LOGIN authentication failed: authentication failure
- md5 authentication failed
- git Authentication failed解决办法
- Digest authentication
- Digest authentication
- Digest authentication
- Openfire 中SASL的认证方式之:PLAIN,DIGEST-MD5,anonymous
- Openfire 中SASL的认证方式之:PLAIN,DIGEST-MD5,anonymous
- Openfire 中SASL的认证方式之:PLAIN,DIGEST-MD5,anonymous
- Openfire 中SASL的认证方式之:PLAIN,DIGEST-MD5,anonymous
- Remote connection failed: javax.security.sasl.SaslException: Authentication failed: all available au
- no SASL authentication mechanisms
- Failed: error connecting to db server: server returned error on SASL authentication step: Authentica
- golang 连接 mongodb dial 报错 server returned error on SASL authentication step: Authencication failed.
- HTTP Digest authentication
- 操作系统与硬件
- Redis系列~管道技术(十五)
- Ubuntu下安装intellig idea2016.2.5破解
- Java中的代码点和代码单元
- LeetCode 121 Best Time to Buy and Sell Stock I
- SASL authentication DIGEST-MD5 failed解决办法
- ReactJS 开发过程中的一些使用心得
- poj-2449-Remmarguts' Date(A*算法+Dijkstra)
- 机器学习中的数学(5)-强大的矩阵奇异值分解(SVD)及其应用
- 《数字图像处理》第三版笔记(四)空间滤波
- [BZOJ3751][NOIP2014][数学][乱搞]解方程
- Implementation Of TDOA Using Chan Algorithm And Taylor Algorithm
- 【JDBC】【JSP】java连接orale数据库
- linux 下net-snmp简单例子