|
/**
|
* 获取飞登录code
|
* @returns
|
*/
|
|
export const getCode = () => {
|
return new Promise((resolve, reject) => {
|
tt.login({
|
success(res) {
|
if (res.code) {
|
let code = res.code
|
resolve(code)
|
} else {
|
reject(res.errString ||res.errMsg || "")
|
}
|
},
|
fail(res) {
|
reject(JSON.stringify(res))
|
}
|
});
|
})
|
}
|
|
|
export const token = () => {
|
return new Promise((resolve, reject)=>{
|
const app = getApp()
|
uni.request({
|
url:'https://open.feishu.cn/open-apis/auth/v3/app_access_token/internal',
|
data:{
|
app_id: app.globalData.appid,
|
app_secret: app.globalData.appsecret,
|
},
|
header:{
|
'Content-Type':'application/json;charset=utf-8',
|
},
|
method:"POST",
|
dataType:"json",
|
success: (result) => {
|
if(result.statusCode != 200)
|
{
|
return rej("访问失败,状态码:" +result.statusCode);
|
}
|
const res = result.data
|
if(res.code==0){
|
resolve(res.app_access_token);
|
} else{
|
console.log("token 失败",result.data);
|
reject(result.data.msg);
|
}
|
},
|
fail: (result) => {
|
console.log("feishu token fail",result)
|
return reject( result);
|
}
|
})
|
})
|
}
|
export const accesstoken = (sCode,sToken) => {
|
return new Promise((resolve, reject)=>{
|
const app = getApp()
|
uni.request({
|
url:'https://open.feishu.cn/open-apis/mina/v2/tokenLoginValidate',
|
data:{
|
code: sCode,
|
},
|
header:{
|
'Content-Type':'application/json;charset=utf-8',
|
"Authorization": 'Bearer '+sToken
|
},
|
method:"POST",
|
dataType:"json",
|
success: (result) => {
|
if(result.statusCode != 200)
|
{
|
return rej("访问失败,状态码:" +result.statusCode);
|
}
|
const res = result.data
|
if(res.code==0){
|
resolve(res.data.access_token)
|
} else{
|
console.log("feishu accesstoken 失败",result.data);
|
reject(result.data.msg);
|
}
|
},
|
fail: (result) => {
|
console.log("feishu accesstoken fail",result)
|
return reject( result);
|
}
|
})
|
})
|
}
|
|
|
export const getUserInfo = (access_token) => {
|
return new Promise((resolve, reject)=>{
|
const app = getApp()
|
uni.request({
|
url:'https://open.feishu.cn/open-apis/authen/v1/user_info',
|
header:{
|
"Authorization": 'Bearer '+ access_token
|
},
|
method:"GET",
|
dataType:"json",
|
success: (result) => {
|
if(result.statusCode != 200)
|
{
|
return rej("访问失败,状态码:" +result.statusCode);
|
}
|
const res = result.data
|
if(res.code==0){
|
resolve(res.data)
|
} else{
|
console.log("feishu getUserInfo 失败",result.data);
|
reject(result.data.msg);
|
}
|
},
|
fail: (result) => {
|
console.log("feishu getUserInfo fail",result)
|
return reject( result.errMsg || '未知错误!');
|
}
|
})
|
})
|
}
|