【实战干货】前端实现 jira sso 单点登录

需求:

我的系统要集成 jira sso

提前准备:

你需要提前了解到 oauth2 单点登录的流程,从而在后续重点关注你所需要copy 的一些数据!

步骤:

1.进入开发者中心 developer.atlassian.com/console/mya...

2.创建自己的app

3.设置登录成功之后的回调地址,以及 copy jira 登录地址

4.找到 client id。secret 信息,copy

5.把提前 copy 的信息写在配置文件里

6.使用

  • 先去 jira 登录
  • 登录成功,jira 跳转到提前设置的回调地址,并且携带 code,保存好 code
  • 拿着 node 去获取 jira 的 access token,保存access token
javascript 复制代码
const res = await fetch('https://auth.atlassian.com/oauth/token', {
    method: 'post',
    headers: {
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        "grant_type": "authorization_code",
        "code": jiraCode,
        "client_id": getJiraConfig().client_id,
        "client_secret": getJiraConfig().client_secret,
        "redirect_uri": getJiraConfig().redirect_uri
    })
}).then(res => res.json())
  • 拿着 access token 去获取该登录用户的信息
javascript 复制代码
return fetch('https://api.atlassian.com/me', {
    method: 'get',
    headers: {
        "Authorization": `Bearer ${localStorage.getItem('accessToken')}`,
        "Accept": "application/json"
    }
}).then(res => res.json())

以及干一些其他的事🤣

相关推荐
mCell4 小时前
GSAP ScrollTrigger 详解
前端·javascript·动效
gnip4 小时前
Node.js 子进程:child_process
前端·javascript
excel7 小时前
为什么在 Three.js 中平面能产生“起伏效果”?
前端
excel9 小时前
Node.js 断言与测试框架示例对比
前端
天蓝色的鱼鱼10 小时前
前端开发者的组件设计之痛:为什么我的组件总是难以维护?
前端·react.js
codingandsleeping10 小时前
使用orval自动拉取swagger文档并生成ts接口
前端·javascript
石金龙11 小时前
[译] Composition in CSS
前端·css
白水清风11 小时前
微前端学习记录(qiankun、wujie、micro-app)
前端·javascript·前端工程化
Ticnix11 小时前
函数封装实现Echarts多表渲染/叠加渲染
前端·echarts
用户221520442780011 小时前
new、原型和原型链浅析
前端·javascript