整合SpringBoot无法登录的问题
-
当前是整合到了SpringBoot中,本地运行可以登录,没有问题,部署到服务器之后无法实现滑块验证,最后抛出了溢出异常,具体异常如下所示
异常类
NoStandardInputForCaptchaException
信息
[0m2021-12-15 17:04:37 V/Net 742139017: No server list cached.[0m [92m2021-12-15 17:04:39 I/Net 742139017: ECDH key is invalid, start to fetch ecdh public key from server.[0m [92m2021-12-15 17:04:40 I/Net 742139017: Successfully fetched ecdh public key from server.[0m [0m2021-12-15 17:04:40 V/Net 742139017: Send: wtlogin.login[0m [92m2021-12-15 17:04:41 I/Bot 742139017: [SliderCaptcha] 需要滑动验证码, 请按照以下链接的步骤完成滑动验证码, 然后输入获取到的 ticket[0m [92m2021-12-15 17:04:41 I/Bot 742139017: [SliderCaptcha] Slider captcha required. Please solve the captcha with following link. Type ticket here after completion.[0m [92m2021-12-15 17:04:41 I/Bot 742139017: [SliderCaptcha] @see https://github.com/project-mirai/mirai-login-solver-selenium[0m [92m2021-12-15 17:04:41 I/Bot 742139017: [SliderCaptcha] @see https://docs.mirai.mamoe.net/mirai-login-solver-selenium/[0m [92m2021-12-15 17:04:41 I/Bot 742139017: [SliderCaptcha] 或者输入 TxCaptchaHelper 来使用 TxCaptchaHelper 完成滑动验证码[0m [92m2021-12-15 17:04:41 I/Bot 742139017: [SliderCaptcha] Or type `TxCaptchaHelper` to resolve slider captcha with TxCaptchaHelper.apk[0m [92m2021-12-15 17:04:41 I/Bot 742139017: [SliderCaptcha] Captcha link: https://ssl.captcha.qq.com/template/wireless_mqq_captcha.html?style=simple&aid=16&uin=742139017&sid=7919702786730209192&cap_cd=ghDfcMdCsNDOQXq9UMK8R0mEiCXYd2RhltIjXptfQO0eFoKMMDxrOA**&clientype=1&apptype=2[0m [0m2021-12-15 17:04:41 V/Net 742139017: Recv: wtlogin.login[0m [91m2021-12-15 17:04: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:127) 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:139) 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 17:04:41.264 [http-nio-8080-exec-15] 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
服务器信息如下
::本地开发环境无登录问题
-
代码已提交至gitee https://gitee.com/Xiaojiuc/qqbot/
-
检查你运行代码的方式。需要支持stdin输入验证码
-
把你本地生成device.json文件放服务器上吧,大概就不用过认证了
-
-
-
我按照您说的的它识别无效,又重新生成了一份
-
@xiaojiuc 你是怎么部署的?我自己是jar打包后把jar文件跟device.json文件一起运行的,没有把device.json文件放进jar里面去。
-
直接放到服务器的根目录吗
-
@kurenairyu 正如刚才恢复您的那个,我把它放在了资源文件夹下
-
那你读取这个文件就需要一些技巧了,mirai本身应该是没有读jar包下的,所以还是直接跟jar文件一个目录下,别打包进去
-
看了一下你的错误,我的解决办法无非也就是 1:把Bot的活跃度拉满 2:去Mirai Android登录一下Bot,复制device.json放到Linux上
-
device.json默认是在.jar包同级目录中的 所以和jar文件放在一起
-
也就是说像这样子放在外面,本身你没有device.json也是在外面生成的。 -
@wssy001 在 整合SpringBoot无法登录的问题 中说:
看了一下你的错误,我的解决办法无非也就是 1:把Bot的活跃度拉满 2:去Mirai Android登录一下Bot,复制device.json放到Linux上
好的,我这种几种方式都去试试,刚才试了一下本地的device上传,还是需要验证码,失败了,也可能是我写的问题
-
文件的话,还是我本地的文件,并没有被替换,所以应该是需要养号了
-
@xiaojiuc 另外建议详细阅读一下官方文档,了解一下Bot的相关配置。
-
@wssy001 好的老哥
-
@wssy001 我感觉我找出问题所在了
-
@xiaojiuc 你好,我也遇到这个问题了,请问你解决了吗?
-
@sakimichan 目前是没有哦