第三方登录集成

一、Google

唯一标识 sub

二、telegram

参考链接:https://juejin.cn/post/7072557507595485221

唯一标识 id

核心参数配置

  • /setdomain:控制 "在哪里显示" (前端域名)

  • data-auth-url:定义 "数据发去哪" (后端接口)

1、BotFather创建机器人
  1. /start

  2. /newbot

  3. 输入机器人名称(以bot结尾) Done:成功

  4. /setdomain (去掉https://) 公网可访问的重定向URL

2、验证规则
  1. 准备数据字符串:将收到的 除 hash 之外 的所有字段(如 auth_date, first_name, id, username),按字段名字母顺序排序,用换行符 \n 连接成 key=value 的形式。 示例 :auth_date=1234567890\nfirst_name=张三\nid=987654321\nusername=zhangsan

  2. 计算密钥:将你的 Bot Token 进行 SHA256 哈希运算,得到的结果作为 HMAC 计算的密钥。

  3. 计算并比对签名:使用上一步得到的密钥,对第一步生成的数据字符串计算 HMAC-SHA256,并将结果转换为十六进制字符串。将此结果与收到的 hash 参数进行精确比对。

补充:本地调试需公访问可借助ngrok内网穿透请求转发

  • 启动服务:先启动后端服务,再启动ngrok (ngrok http 9218)
  • 复制ngrok地址:复制 https://xxxx.ngrok.io

大致流程

1、google:返回authorizeUrl 授权链接

String authorizeUrl = authRequest.authorize(AuthStateUtils.createState());

2、telegram:前端嵌入script代码直接跳转授权链接
相关推荐
大鸡腿同学7 小时前
手心向上,手心向下
后端
CCblandy8 小时前
令牌桶在 0.9 倍负载超发 19%、固定窗口边界放行 20 个:四种限流算法同构实测
后端·python·算法·性能优化·架构
凤山老林9 小时前
Spring Boot 集成 Sa-Token 实现高可用权限认证:登录鉴权、动态路由权限与接口防重放实战
spring boot·后端·sa-token·bootstrap
Bazingga10 小时前
一次推理的完整旅程:ReAct推理深度解析
后端
姜鱼问生11 小时前
Nginx gzip 压缩:一个配置让页面加载快 3 倍
后端·算法·架构
颜酱11 小时前
一栋商业大厦,讲清 InnoDB 的表空间、段、区和页
后端·mysql
码事漫谈11 小时前
1956 亿行数据该怎么存:金仓时序数据库的三个实测
后端
Wx-bishekaifayuan11 小时前
springboot桂味美食分享系统40540-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
彭亚川Allen11 小时前
从零手搓 RAG 之检索全流程,给大模型接上自己的知识库
前端·后端·ai编程
IT_陈寒11 小时前
别让Java字符串拼接偷偷吃掉你的内存
前端·人工智能·后端