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() @Get()
async getHello() : Promise<string> { async getHello() : Promise<string> {
let connector : ConnectorsService = new ConnectorsService(); let connector : ConnectorsService = new ConnectorsService();
connector.GetConnData(); connector.SetConnData();
return await this.mufapiService.getAccessToken(connector.path, connector.creds, connector.options); 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 будет финалка
@Post('menu') @Post('menu')
getMenu () : JSON { getMenu () : JSON {

View File

@ -13,9 +13,10 @@ export class ConnectorsService {
path : string; // путь, куда стучимся path : string; // путь, куда стучимся
creds : string; //правильная строка - солянка из логина и пароля, чем стучимся creds : string; //правильная строка - солянка из логина и пароля, чем стучимся
options : any; //в основном здесь хидеры, а то без них не хочет работать options : any; //в основном здесь хидеры, а то без них не хочет работать
body: string;
//Замечательный метод класса для инициализации свойств класса, сейчас в ручную, в дальнейшем планируется автоматом из конфы //Замечательный метод класса для инициализации свойств класса, сейчас в ручную, в дальнейшем планируется автоматом из конфы
GetConnData() { SetConnData() {
this.user = "admin"; this.user = "admin";
this.password = "admin"; this.password = "admin";
this.path = 'http://192.168.244.1/e-data-front/auth/login'; this.path = 'http://192.168.244.1/e-data-front/auth/login';
@ -25,10 +26,21 @@ export class ConnectorsService {
}; };
return 0; return 0;
}; };
//Замечетельный метод, пока не придумал назначение, но если есть Get, то должен быть и Set //Замечетельный метод, пока не придумал назначение, но если есть 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 //Класс основных методов для получения, обработки данных и дальнейшей пересылки в Exporter
@ -49,12 +61,31 @@ export class MufapiService {
}).catch((error)=>{ }).catch((error)=>{
this.token = error; this.token = error;
}); });
// Получаем и радуемся
return this.token; return this.token;
} }
//Получение данных для формирования меню в МУФ //Получение данных для формирования меню в МУФ
async getMenu () : Promise<string> { async getMenu (path:string, body:string, headers) : Promise<string> {
return 'body'; 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";
} }
} }