第三方登录集成

一、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代码直接跳转授权链接
相关推荐
SamDeepThinking18 小时前
用工厂模式和模板方法统一封装所有第三方的Access Token
java·后端·架构
CodeSheep18 小时前
DeepSeek的最新招人标准,太讽刺了。
前端·后端·程序员
夏沫的梦18 小时前
DeepSeek V4-Vllm部署:高效长上下文推理的实现
人工智能·后端
blasit18 小时前
Qt C++ http服务器安全登录token生成管理
c++·后端·qt
golang学习记18 小时前
Go 字符串优化:从“能跑就行”到“快到编译器都追不上我”
后端
AskHarries18 小时前
我把域名卖了,顺手换了个新域名,然后站就没了
后端
用户9623779544818 小时前
原理分析 | Controller —— SpringBoot 内存马
javascript·后端
渐儿18 小时前
PyTorch深度教程(一):快速入门与核心概念
后端
Maiko Star18 小时前
跑通第一个Spring AI 应用
java·后端·spring·springai
木易 士心18 小时前
云数据库 Clouder 认证:SQL 基础开发与应用题型分析
数据库·后端·sql·oracle