整合SpringBoot无法登录的问题
-
@xiaojiuc 你的mirai-core版本多少?尝试升级至至少2.6.8版本,另外建议清空一下mirai生成的cache文件夹,device.json不用清
-
-
-
@xiaojiuc 论坛官方公告
-
@wssy001 mirai后台也是用的ANDROID_PHONE协议,device.json导出了也还是不行,就难受
-
@wssy001 fileBasedDeviceInfo()这块儿标识的device.json的地址可以是是绝对路径吗,相对于磁盘根目录的
-
@xiaojiuc 你还是把报错信息贴上来吧。我都是用fileBasedDeviceInfo("deviceInfo.json");让Mirai生成在工作目录。由于都是单体springboot项目,打包运行后Mirai生成的deviceInfo.json(A)和xxx.jar放在一个目录下。我把项目部署到Docker中偶尔会出现什么滑动验证,碰到这个问题后我会导出Mirai Android生成的deviceInfo.json(B),把deviceInfo.json(A)内的数据全部清空,再把deviceInfo.json(B)内的数据全部复制到deviceInfo.json(A),再次运行xxx.jar,基本是直接登录的。至于什么不常用设备,老老实实挂个一礼拜再说。如果运行环境再国外,那就看运气了。
-
@wssy001 在 整合SpringBoot无法登录的问题 中说:
把项目部署到Do
LoginSolver这块儿我没有重新定义,另外我运行的服务器是百度云的轻量级服务器,CentOS7,总是会出现问题,具体日志如下,作者说是可能使由于异地环境所导致的,建议我构建自己的登录解析
当前的路径/home/source/device/device-1640161597523.json 当前的类型ANDROID_PHONE 当前设备信息为(net.mamoe.mirai.Bot) -> net.mamoe.mirai.utils.DeviceInfo �[0m2021-12-22 16:53:37 V/Net 742139017: No server list cached.�[0m �[92m2021-12-22 16:53:40 I/Net 742139017: ECDH key is invalid, start to fetch ecdh public key from server.�[0m �[92m2021-12-22 16:53:40 I/Net 742139017: Successfully fetched ecdh public key from server.�[0m �[0m2021-12-22 16:53:41 V/Net 742139017: Send: wtlogin.login�[0m �[92m2021-12-22 16:53:41 I/Bot 742139017: [SliderCaptcha] 需要滑动验证码, 请按照以下链接的步骤完成滑动验证码, 然后输入获取到的 ticket�[0m �[92m2021-12-22 16:53:41 I/Bot 742139017: [SliderCaptcha] Slider captcha required. Please solve the captcha with following link. Type ticket here after completion.�[0m �[92m2021-12-22 16:53:41 I/Bot 742139017: [SliderCaptcha] @see https://github.com/project-mirai/mirai-login-solver-selenium�[0m �[92m2021-12-22 16:53:41 I/Bot 742139017: [SliderCaptcha] @see https://docs.mirai.mamoe.net/mirai-login-solver-selenium/�[0m �[92m2021-12-22 16:53:41 I/Bot 742139017: [SliderCaptcha] 或者输入 TxCaptchaHelper 来使用 TxCaptchaHelper 完成滑动验证码�[0m �[92m2021-12-22 16:53:41 I/Bot 742139017: [SliderCaptcha] Or type `TxCaptchaHelper` to resolve slider captcha with TxCaptchaHelper.apk�[0m �[92m2021-12-22 16:53:41 I/Bot 742139017: [SliderCaptcha] Captcha link: https://ssl.captcha.qq.com/template/wireless_mqq_captcha.html?style=simple&aid=16&uin=742139017&sid=6028278414539155349&cap_cd=Pt9CXWBO4L03osiJGasLTqTBJlABrAMFe95Mrr097EvaKdRkmNu2Aw**&clientype=1&apptype=2�[0m �[0m2021-12-22 16:53:41 V/Net 742139017: Recv: wtlogin.login�[0m �[91m2021-12-22 16:53:41 W/Net 742139017: net.mamoe.mirai.network.NoStandardInputForCaptchaException: no standard input for captcha net.mamoe.mirai.network.NoStandardInputForCaptchaException: no standard input for captcha at net.mamoe.mirai.utils.StandardCharImageLoginSolver$1.invokeSuspend(LoginSolver.jvm.kt:120) at net.mamoe.mirai.utils.StandardCharImageLoginSolver$1.invoke(LoginSolver.jvm.kt) at net.mamoe.mirai.utils.StandardCharImageLoginSolver$1.invoke(LoginSolver.jvm.kt) at net.mamoe.mirai.utils.StandardCharImageLoginSolver$input$1$1.invokeSuspend(LoginSolver.jvm.kt:132) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665) �[0m �[92m2021-12-22 16:53:41 I/Bot 742139017: Bot cancelled: Bot closed�[0m 16:53:41.271 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - [doResolveHandlerMethodException,434] - Failure in @ExceptionHandler com.ruoyi.framework.web.exception.GlobalExceptionHandler#handleRuntimeException(RuntimeException, HttpServletRequest) java.lang.StackOverflowError: null at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:66) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:60) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:72) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:60) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:72) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:60) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:72) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:60) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:72) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:60) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:72) at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:60)
-
@xiaojiuc 在 整合SpringBoot无法登录的问题 中说:
先看一下这边的文档,添加参数“-Dmirai.slider.captcha.supported”
有安卓手机不?有的话去这边下载一个手动滑动验证的APP https://github.com/mzdluo123/TxCaptchaHelper/releases
使用步骤:
打开那个APP,输入Mirai显示的Captcha link(验证码地址)到APP中间的输入框,点击下一步,完成滑动验证。之后APP会有一个URL,你复制后输入到Mirai中,按回车键就能完成登录验证。 -
这个方法就是手动完成验证,基本上能解决90%的登录问题。登录完成后请备份device.json,下次直接套用这个device.json就行了
-
@wssy001 我试试,这两天有带你忙,没看论坛,抱歉啊,我当前总是出现no standard input for captcha
-
@wssy001 这就有点难受,第二步验证的时候总是过不去
-
@wssy001 手机滑块验证的时候第二不的链接加载不出来,一片白色,就很无奈啊
-
@xiaojiuc 第二步让你在QQ浏览器打开,你把链接发到QQ(我的手机),在手机QQ上点开该链接,手机QQ默认会用自带的QQ浏览器打开。我以往的经历告诉我照这么做去验证,最后都能成功登陆,你不能完成那我也不造了。
-
@wssy001 真的成功了,现在linux部署的已经可以正常运行了,但是还是不知道该怎么重写登录,让登录过程中跟前端通信去,让页面能看到链接
-
@wssy001 大佬,问下
这块儿的异常问题会引起程序无法正常启动,要怎么处理呢