鲁阳挥戈 2024-06-17 02:43 采纳率: 57.1%
浏览 8
已结题

关于#华为#的问题:华为HMS账号登录

华为HMS账号登录,V6.0版本,登录后的一个取值问题

https://hwid-drcn.platform.hicloud.com/AccountServer/IDM/loginV3? 该接口从快应用账号密码登录后
返回内容:resultCode=0&loginUserNameFlag=1&totpK=1347213A2FCBBD0EEFE7BFE1C383749CD82DA1CC7D8978C841FF28BADC5ECDC6&flag=0000000&homeZone=0&bindMobilePhone=1&nickName=hid77868900&accountType=2&weakPwdFlag=0&userID=30086000789176216&agrFlags=0000000001000&familyGroupFlag=0&loginUserName=hid77868900&timeStep=30&userState=1&countryCode=CN&accountAnonymous=170**52&userAccount=17033399952&ageGroupFlag=0&siteID=1&TGC=00030086000789176216icIMXuRxetsSXHjuKkOaHicliay84PIuf&homeCountry=CN

其他接口的请求中的这个值“&service_token=000300860007892112768cb2db986fa3191596e4b6bed48ca0ec386ded99d894b46e27dcf86df32351dc” 抓包过程中没发现这个值,这个值service_token是如何来的?

  • 写回答

5条回答 默认 最新

  • 叫兽-郭老师 新星创作者: Java技术领域 2024-06-17 02:44
    关注

    🕝凌晨好,题主!目前:🔴[离线]
    📢参考通义千问、由郭老师整理提供!
    📣今日诗号:七弦抚尽,何处觅知音,但向朗月空林。翰墨残迹,谁得千秋理,且听松涛竹意。

    您想知道华为 HMS 账号登录 V6.0 版本中,其他接口请求中的 service_token 参数是如何生成的,对吗?

    根据您提供的登录接口返回内容,我无法直接确定 service_token 的生成方式。service_token 通常是根据登录成功后返回的信息进行加密或签名生成的,用于后续接口请求的身份验证。

    为了找到 service_token 的生成方法,您可以尝试以下几种方法:

    1. 分析华为官方文档

    华为开发者联盟网站应该提供了 HMS 账号登录和相关 API 的文档。仔细阅读文档,查找关于 service_token 的说明,以及生成方式和使用示例。

    2. 反编译 APK

    如果您拥有使用 HMS 账号登录功能的应用程序 APK 文件,可以使用反编译工具对其进行反编译。分析反编译后的代码,查找处理登录结果和生成 service_token 的逻辑。

    3. 抓包分析

    使用抓包工具(如 Fiddler、Charles)捕获应用程序与服务器之间的网络请求,重点关注登录成功后到其他接口请求之间的流量。分析请求头、请求参数和响应内容,尝试找到 service_token 的生成规律。

    注意事项:

    • 反编译和抓包分析可能会涉及到法律和安全风险,请谨慎操作。
    • 华为 HMS 账号登录机制可能会更新,请参考最新的官方文档和信息。

    以下是一些通用的 service_token 生成思路(仅供参考):

    • 基于时间戳和随机数: 使用当前时间戳、随机数和用户 ID 等信息,结合密钥进行加密或签名,生成 service_token
    • 基于 JWT (JSON Web Token): 使用 JWT 标准,将用户 ID、登录时间、有效期等信息存储在 payload 中,使用密钥进行签名,生成 service_token
    • 基于 OAuth 2.0 协议: 使用 OAuth 2.0 协议进行授权,登录成功后获取 access token,将其作为 service_token 使用。

    请您根据实际情况尝试以上方法,找到 service_token 的生成方式。如果您还有其他问题,请随时提出。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 6月17日
  • 已采纳回答 6月17日
  • 创建了问题 6月17日