App接入認證服務
環境簡紹
ip:port:對應認證服務器的ip地址和端口。可以配置對應的域名訪問,視情況而定、。
賬戶/密碼認證登錄
執行POST請求 http://ip:port/oauth/token 執行配置樣例如下:
設置請求參數中:
#請求Header中的配置
Content-Type=application/json
Authorization=Basic amFubGU6amFubGVTZWNyZXQ=
#請求參數
grant_type=password
password=xxx
username=xxx
請求返回的樣例:
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1NjUyNDA1NTAsInVzZXJfbmFtZSI6ImphbmxlIiwiYXV0aG9yaXRpZXMiOlsiYWRtaW4iXSwianRpIjoiOGE2MTMzMWUtMjYwZC00MzhhLTllYzMtOTQ2NTI0ZmM1MDYxIiwiY2xpZW50X2lkIjoiamFubGUiLCJzY29wZSI6WyJhbGwiXX0.0lTVJduhyIOArkHpN5562nLnigBsahHWKVbXfd1m1mg",
"token_type": "bearer",
"refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX25hbWUiOiJqYW5sZSIsInNjb3BlIjpbImFsbCJdLCJhdGkiOiI4YTYxMzMxZS0yNjBkLTQzOGEtOWVjMy05NDY1MjRmYzUwNjEiLCJleHAiOjE1Njc5MTE3NTAsImF1dGhvcml0aWVzIjpbImFkbWluIl0sImp0aSI6Ijg2ZDk1ZmUyLTVjMTAtNGRmYy04YjZiLWYwNjVkODFjNTNlZSIsImNsaWVudF9pZCI6ImphbmxlIn0.kRo9spIowKuZJq1h-Ondm_BoNdYncNHzl6kRMx8aBV4",
"expires_in": 7199,
"scope": "all",
"user_name": "janle",
"jti": "8a61331e-260d-438a-9ec3-946524fc5061"
}
短信認證登錄調用
執行GET請求 http://ip:port/validate/sms?mobile=18035198120 執行發送驗證碼樣例如下:
收到短信驗證碼後,執行登錄POST請求。http://ip:port/login/mobile?mobile=18035198120&smsCode=8727
帶token訪問資源
請求用戶信息。http://ip:port/user/me返回對應的登錄用戶的信息。
傳遞參數在需要授權的接口上添加deviceId信息和Authorization返回的授權的token值
刷新認證token信息
請求刷新token的信息執行post刷新http://127.0.0.1/oauth/token返回對應的登錄用戶的信息。
請求會返回新的token和refreshtoken
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1NjUyNDIzODgsInVzZXJfbmFtZSI6ImphbmxlIiwiYXV0aG9yaXRpZXMiOlsiYWRtaW4iXSwianRpIjoiMWNhNDU2MDctOWYzNC00OTkyLWI5ODItNTAzMWY5YjRmM2Y2IiwiY2xpZW50X2lkIjoiamFubGUiLCJzY29wZSI6WyJhbGwiXX0.hn5RMDccXJn_JAKcTGFFLn00t7kbZCeki3_7EEyQ88Q",
"token_type": "bearer",
"refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX25hbWUiOiJqYW5sZSIsInNjb3BlIjpbImFsbCJdLCJhdGkiOiIxY2E0NTYwNy05ZjM0LTQ5OTItYjk4Mi01MDMxZjliNGYzZjYiLCJleHAiOjE1Njc5MTI4NTgsImF1dGhvcml0aWVzIjpbImFkbWluIl0sImp0aSI6IjZhMzY1ZDg1LWI2NWItNDhmYi1hM2Y4LTE4ODViYTRhOTYxNiIsImNsaWVudF9pZCI6ImphbmxlIn0.hm4NfZdEr8FKxsaeoYnPTTa1lDxLzAdZCcbHN2aBBBM",
"expires_in": 7199,
"scope": "all",
"user_name": "janle",
"jti": "1ca45607-9f34-4992-b982-5031f9b4f3f6"
}