Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

可否将version/appkey/User-Agent等参数做为config options解决多客户端登陆 #32

Open
wuwentao opened this issue Nov 20, 2024 · 2 comments

Comments

@wuwentao
Copy link

wuwentao commented Nov 20, 2024

Is your feature request related to a problem? Please describe.

威精灵客户端app会频繁退出,服务器端会检测登录的客户端数量

Describe the solution you'd like

尝试完全模拟客户端,由于不同的手机,使用的客户端版本version/appkey及UA等参数可能并不一致,导致服务器认为是多个不同的客户端登录,因此旧的就被强制退出了,因此这一块需要做成可配置的参数,来模拟客户端一致性,而未配置时则使用系统默认值。

自行抓包获取对应app的客户端版本version及UA等参数,配置在HA的config options中,保证HA的行为和客户端app的行为完全一致,可能可以解决反复退出问题。

因为有的可能使用Android,有的可能是iOS,客户端版本也有新旧之分,只能自定义参数解决这种差异性问题

Describe alternatives you've considered

目前好像这一块都是hard code,导致不能特别方便的自定义,而且频繁退出问题可能是最影响用户体验的痛点

Additional context

no

@wuwentao wuwentao changed the title 可否将User-Agent等参数做为config options解决多客户端登陆 可否将version/appkey/User-Agent等参数做为config options解决多客户端登陆 Nov 20, 2024
@daxingplay
Copy link
Owner

appkey和version应该是不能变的,这个和用户没关系。我估计他大概率也和user agent没有关系。单纯就是按账号(手机号)限制的。我记得我之前测过,在一个iPhone登陆,在另外一个同型号的iPhone登陆就会把刚才iPhone登陆的账号踢掉。你有多个手机的话也可以试一试。

@wuwentao
Copy link
Author

细节方面我不懂,这个必须承认您是这方面大神,但是我个人认为用二个手机进行测试的这个思路是完全错误的,如有错误,还请指正!

因为我们是不可能直接用二个手机同时登陆,实现出模拟一个用户,这种100%会被识别成二个用户。

现在的目标是要用二台机器模拟出同一个用户,而服务器如何识别这个唯一用户,就是这些HTTP headers和标识,
当然,并不是只有这几个选项,例如我这边新版本的UA已经变了,我不确定Android的是什么。
除此之外,还有其中很重要的一点,应该是token,这个我猜大概率是使用oauth协议认证,也就是http auth的Bearer认证头,这个玩意是有有效期的,到期以后需要重新到服务器获取新的,这时候同步最新的token不确定是否有问题,得实际验证,现在的问题看起来好像就是token有效期之前还能同时用,后面过期以后就完蛋了,只有一个能刷新并使用了,另外一个就被踢出了!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants