ynu-aaa
Version:
a 3A API Client for YNU
87 lines (79 loc) • 2.55 kB
text/typescript
import axios from 'axios';
import Debug from 'debug';
import {GetToken, getToken} from "../index";
import {UserPasswordUpdateParams, UserUpdateParams, ResResult} from "./type/user_update";
import {UserDetailQueryParams, UserDetailResult} from "./type/user_detail";
import {DeleteMacAuthParams} from "./type/mac_delete";
import {UserAddParams} from "./type/user_add";
const debug = Debug('ids::debug');
const https = require('https');
const httpsAgent = new https.Agent({
rejectUnauthorized: false // 禁用证书验证
});
/**
* 获得用户详情
*/
export const getUserDetail = async (params: UserDetailQueryParams, options: GetToken): Promise<UserDetailResult | any> => {
const token = await getToken(options);
params.access_token = token;
const res = await axios.get(`${options.host}/api/v1/user/view`, {
httpsAgent,
headers: {
Authorization: token,
},
params: params
});
return res.data.data;
}
/**
* 增加用户接口
*/
export const addUser = async (params: UserAddParams, options: GetToken): Promise<ResResult | any> => {
const token = await getToken(options);
params.access_token = token;
const res = await axios.post(`${options.host}/api/v1/users`, {
...params,
},{
httpsAgent
});
return res.data;
}
/**
* 修改用户
*/
export const updateUser = async (params: UserUpdateParams, options: GetToken): Promise<ResResult | any> => {
const token = await getToken(options);
params.access_token = token;
const res = await axios.post(`${options.host}/api/v1/user/update`, {
...params,
},{
httpsAgent
});
return res.data;
}
/**
* 修改用户密码
*/
export const updateUserPassword = async (params: UserPasswordUpdateParams, options: GetToken): Promise<ResResult | any> => {
const token = await getToken(options);
params.access_token = token;
const res = await axios.post(`${options.host}/api/v1/user/super-reset-password`, {
...params,
},{
httpsAgent
});
return res.data;
}
/**
* 删除Mac认证设备
*/
export const DeleteMacAuth = async (params: DeleteMacAuthParams, options: GetToken): Promise<ResResult | any> => {
const token = await getToken(options);
params.access_token = token;
const res = await axios.post(`${options.host}/api/v1/base/delete-mac-auth`, {
...params,
},{
httpsAgent
});
return res.data;
}