登陆界面怎样判断是人为登录还是程序在登陆
iChaoBuster 已经说到点子上了。而至于淘宝这边,在登录时候,会记录很多的数据来判断这一点。记录的数据通过ua这个参数传递给服务器。\u0026lt;input type="hidden" name="ua" id="UA_InputId" value="https://www.zhihu.com/api/v4/questions/22673566/062WsMPac/FS4KgNn94nvw9Wm70ODBULv+84c4=|WUCLjKhqr/DA2ZeQlB7LrPE=|WMEKRlVG2DtUY3lc7+UsT237snn+khzBtozFSY8=|X0YLbX78NUR27iIlcfMyUWf9slSHBdi5jxba/flzzquTjgDnY/F0zQ==|XkdILojyXzwKk1h/zMYXclB/Zw==|XcEKLzzf|XEGKr7xf|U0pHIYeNE/SAOKWNbhyybwg9Ycf/+0GC49uX2j1Z4DlcazK/p9V7psH0qA6ZpWuy3v6jLhldm1Ixi522A+F/mOxUXnk9r63k1s2AKWrgMVIUKLZ5qja0aQs6pgAnU+GomoHMZXYsqeq3mA==|UkiDzzxmh+7C29YxdS/6k6YwPRpuFLnW5n61srYM3YqyKuZqrA==|UUjFowUPVYTqWMQLI9oHRGj5b2WwSYjrx1+UcsFbltWIpw==|UEmF4/Aj8pmpM77YbmSlwPlhr2ibIeS7jhcaapnzLk95ZWgPC3GQ8cRek5TgYgxPY3piR4E=|V0yHy9hDfeq1DRRbc8d9nvrKx+JRgls0A5XY/wzvQiENnNWzlx3Ui72Sig==|VkqBzd5Fe+yzCxJddcF7mPzMweRX1XgdLzU4P/ka|VUmCzt1GeO+wCBFedsJ4m//PwudULoPm1c/Cygzv|VM4C5FctgOPP1hscrz3sga22ud+7GbTV5H61sgGDVgklOPSSlgyhxPNl6E+J"\u0026gt;以上是ua的一个例子,具体记录了鼠标的移动事件,鼠标点击事件,键盘事件,以及页面元素获取和失去焦点的事件,通过这些数据,淘宝能够知道你在这个页面具体鼠标移动的轨迹,键盘按过什么键,以此来判断是否程序登录。另外,由于ua是经过多层加密,也能够保证伪造的困难性。如果无法伪造这个参数,留给登录程序的,只能是两种做法,一个是ua参数留空,二是使用模拟点击的方式来实现登录行为。这个能够让淘宝很快地判断出是否程序登录。
■网友
猜测是通过页面上用户行为来判断的。一般人为登陆,会存在以下一些步骤:页面焦点切换到用户名输入框(存在cookie的情况下可能省略);用户输入用户名的键盘行为(存在cookie的情况下可能省略);页面焦点切换到密码输入框(可能省略);用户输入密码的键盘行为;触发输入框enter事件或登陆按钮onclick事件;程序提交登陆表单或ajax报文。可以看到,如果是人为登陆,至少有上述的第4、5步的行为。而程序登陆则只需要一步:拼接登陆表单或ajax报文并提交。所以我猜测只要用js判断用户是否与页面存在上述第4、5步的互动,就可以判定是否是人为登陆了。
推荐阅读
- 聪明人养花,这3种“花”怎样也要养一盆,每年能省不少医药费
- 互联网怎样解决“家政服务上门速度慢”的问题
- 怎样看待从1月8号起,QQ钱包开始提现收费
- 银行it人怎样转型
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 怎样进入通信行业
- 怎样评价扶他柠檬茶的小说《云养汉》的结尾
- 怎样成为一名合格的Python程序员?
- 怎样评价华为、诺基亚、中兴中标中国移动高端路由交换设备扩容集采
- 怎样评价类似前橙会、百老汇、南极圈这样类型的离职帮抱团,对企业的积极意义和消极意义
