rc
DenisN 2025-03-28 16:21:44 -04:00
parent 4bc36cf18b
commit fe13f233aa
3 changed files with 48 additions and 7 deletions

File diff suppressed because one or more lines are too long

View File

@ -9,9 +9,19 @@ export class MufapiController {
@Get()
async getHello() : Promise<string> {
let connector : ConnectorsService = new ConnectorsService();
connector.GetConnData();
connector.SetConnData();
return await this.mufapiService.getAccessToken(connector.path, connector.creds, connector.options);
}
@Get('test')
async getQuery() : Promise<string> {
let connector : ConnectorsService = new ConnectorsService();
connector.SetConnData();
let token : string =await this.mufapiService.getAccessToken(connector.path, connector.creds, connector.options);
connector.GetMenuData(token);
return await this.mufapiService.getMenu(connector.path, connector.body, connector.options);
}
//Получаем данные по POST будет финалка
@Post('menu')
getMenu () : JSON {

View File

@ -13,9 +13,10 @@ export class ConnectorsService {
path : string; // путь, куда стучимся
creds : string; //правильная строка - солянка из логина и пароля, чем стучимся
options : any; //в основном здесь хидеры, а то без них не хочет работать
body: string;
//Замечательный метод класса для инициализации свойств класса, сейчас в ручную, в дальнейшем планируется автоматом из конфы
GetConnData() {
SetConnData() {
this.user = "admin";
this.password = "admin";
this.path = 'http://192.168.244.1/e-data-front/auth/login';
@ -25,10 +26,21 @@ export class ConnectorsService {
};
return 0;
};
//Замечетельный метод, пока не придумал назначение, но если есть Get, то должен быть и Set
SetConnData() {
GetConnData() {
};
//Пробуем получить данные для меню
GetMenuData (token : string){
this.path = 'http://192.168.244.1/e-cmdb/api/query';
this.body = '{"id":["device$18"],"notNull":true,"data":{"parent":true,"children":true,"fields":["id","name"]}, "enableActions":false,"ts":1740485837813}';
this.options = {
headers: {'Content-Type' : 'application/json', 'access-token' : token}
};
}
};
//Класс основных методов для получения, обработки данных и дальнейшей пересылки в Exporter
@ -49,12 +61,31 @@ export class MufapiService {
}).catch((error)=>{
this.token = error;
});
// Получаем и радуемся
return this.token;
}
//Получение данных для формирования меню в МУФ
async getMenu () : Promise<string> {
return 'body';
async getMenu (path:string, body:string, headers) : Promise<string> {
interface VksMenu {
id: number;
name: string;
parent: {
id: number;
name: string;
},
};
//А вот эта Коза пока не зашла((()))
let resp : VksMenu [];
await axios.post(path, body, headers).then((response)=>{
resp = response.data;
//this.token = auth.access_token;
console.log(resp.id);
console.log(resp.name);
}).catch((error)=>{
this.token = error;
});
return "Null";
}
}