【实战干货】前端实现 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())

以及干一些其他的事🤣

相关推荐
~甲壳虫1 分钟前
说说webpack proxy工作原理?为什么能解决跨域
前端·webpack·node.js
Cwhat2 分钟前
前端性能优化2
前端
熊的猫1 小时前
JS 中的类型 & 类型判断 & 类型转换
前端·javascript·vue.js·chrome·react.js·前端框架·node.js
瑶琴AI前端1 小时前
uniapp组件实现省市区三级联动选择
java·前端·uni-app
会发光的猪。1 小时前
如何在vscode中安装git详细新手教程
前端·ide·git·vscode
我要洋人死3 小时前
导航栏及下拉菜单的实现
前端·css·css3
科技探秘人3 小时前
Chrome与火狐哪个浏览器的隐私追踪功能更好
前端·chrome
科技探秘人3 小时前
Chrome与傲游浏览器性能与功能的深度对比
前端·chrome
JerryXZR3 小时前
前端开发中ES6的技术细节二
前端·javascript·es6
七星静香3 小时前
laravel chunkById 分块查询 使用时的问题
java·前端·laravel