4
接入流程
泽汐(Evetide)统一登录支持两种接入方式:Web 网站走标准 OAuth 2.0 授权码(四步),iOS / Android / 桌面 App 可用原生登录 API 免浏览器直连(三种方式)。
四步完成授权码接入
1
发起授权
网站登录页放一个「统一登录」入口,跳转到授权地址。校验返回的 state 防止 CSRF:
https://login.evetide.cn/api_authorize.php?client_id=你的client_id&redirect_uri=你的回调地址&response_type=code&scope=profile email&state=你自己生成的随机串
2
用户授权后回调
用户登录 / 注册并同意授权后,跳回你的回调地址并携带 ?code=xxx&state=xxx。先校验 state,再用 code 换 token:
POST https://login.evetide.cn/api_token.phpAuthorization: Basic base64(client_id:client_secret)
grant_type=authorization_code&code=xxx&redirect_uri=你的回调地址
3
获取用户信息
用返回的 access_token 请求用户信息:
GET https://login.evetide.cn/api_userinfo.phpAuthorization: Bearer <access_token>
返回 sub(用户唯一标识)、name(昵称)、email、picture(头像)。
4
建立本地登录态
用 sub 作为用户在你自己系统的标识,创建本地登录态,完成接入。
原生接入(App 免浏览器)
iOS / Android / 桌面 App 不想用 WebView 或系统浏览器展示登录页?直接调原生登录接口,应用内完成登录,返回与网页登录一致的 access_token / refresh_token。
A
邮箱 + 密码
App 内输入用户名 / 邮箱和密码直接登录,内置防暴力破解限流(5 次 / 5 分钟)。
POST https://login.evetide.cn/api_native_login.php{ "type": "password", "client_id": "你的client_id", "account": "user@x.com", "password": "..." }
B
邮箱 + 验证码
先发登录验证码(api_send_code.php,method=login),再凭验证码登录,无需密码。
POST https://login.evetide.cn/api_send_code.php{ "email": "user@x.com", "method": "login", "captcha_token": "" }
POST https://login.evetide.cn/api_native_login.php{ "type": "email_code", "client_id": "你的client_id", "email": "user@x.com", "code": "123456" }
C
快捷登录(平台 SDK)
App 端用平台原生 SDK(微信 / QQ / 钉钉 / 飞书 / GitHub / Gitee)拿到 openid,直接登录,首次自动建档。
POST https://login.evetide.cn/api_native_login.php{ "type": "social", "client_id": "你的client_id", "provider": "wechat",
"provider_sub": "平台openid", "nickname": "可选", "avatar": "可选", "email": "可选" }
限流:每应用默认 100 次 / 分钟。详见 接口一览。