OAuth 2.0
适用于需要用户身份的接入场景。应用拿到授权码后,必须在服务端换取 Token。
授权地址GET是https://api.dibinos.cn/oauth/authorizeToken 地址POST是https://api.dibinos.cn/oauth/token用户信息GET可选https://api.dibinos.cn/oauth/userinfo发现文档GET可选https://api.dibinos.cn/oauth/.well-known/openid-configuration1浏览器是跳转到授权地址。2用户是登录并确认授权。3回调是平台携带 code 和 state 返回 redirect_uri。4服务端是使用 code 换取 Token。5服务端可选使用 access_token 获取用户信息。1GET https://api.dibinos.cn/oauth/authorize?response_type=code&client_id=CLIENT_ID&redirect_uri=REDIRECT_URI&scope=openid%20profile%20email&state=STATEresponse_typestring是固定为 code。client_idstring是应用 Client ID。redirect_uristring是应用回调地址。scopestring是推荐 openid profile email;如需刷新 Token,追加 offline_access。statestring是随机字符串,回调后需校验。1GET REDIRECT_URI?code=AUTH_CODE&state=STATE1curl -X POST https://api.dibinos.cn/oauth/token \2-H "Content-Type: application/x-www-form-urlencoded" \3-u "CLIENT_ID:CLIENT_SECRET" \4-d "grant_type=authorization_code" \5-d "code=AUTH_CODE" \6-d "redirect_uri=REDIRECT_URI"grant_typestring是固定为 authorization_code。codestring是授权回调返回的 code。redirect_uristring是需与授权请求保持一致。access_tokenstring是调用用户信息接口。token_typestring是Bearer。expires_innumber是有效期,单位秒。id_tokenstring可选包含用户身份信息。refresh_tokenstring可选scope 包含 offline_access 时返回。1{2 "access_token": "eyJ...",3 "token_type": "Bearer",4 "expires_in": 3600,5 "id_token": "eyJ..."6}1curl -X POST https://api.dibinos.cn/oauth/token \2-H "Content-Type: application/x-www-form-urlencoded" \3-u "CLIENT_ID:CLIENT_SECRET" \4-d "grant_type=refresh_token" \5-d "refresh_token=REFRESH_TOKEN"1curl https://api.dibinos.cn/oauth/userinfo \2-H "Authorization: Bearer ACCESS_TOKEN"