3.0.2 • Published 5 years ago

@proffix/restapi-angular-library v3.0.2

Weekly downloads
1
License
Apache-2.0
Repository
github
Last release
5 years ago

PROFFIX REST API Library für Angular

Die PROFFIX REST API Library für Angular ermöglicht die einfache Kommunikation mit der PROFFIX REST API in Angular- Anwendungen. Die Library ist unabhängig von der grafischen Oberfläche und kann mit Ionic oder anderen Frameworks verwendet werden.

Erste Schritte

Ein lauffähiges Angular-Projekt muss vorhanden sein. Über die Angular CLI lässt sich das einfach erstellen.

1. Library im Projekt installieren

Die Library ist über npm verfügbar: npm install @proffix/restapi-angular-library --save

2. Konfiguration und Bootstrapping

Es muss eine von Configuration vererbte Klasse erstellt werden, in der die beiden abstrakten Methoden requiredWebserviceVersion und requiredLicencedModules überschrieben werden müssen.

import { Injectable } from '@angular/core';
import { PxConfiguration, PxModule, PxVersion } from '@proffix/restapi-angular-library';

@Injectable()
export class AppConfiguration extends PxConfiguration {
  public get requiredWebserviceVersion(): PxVersion {
    return { Major: 2, Minor: 7, Patch: 1 };
  }
  public get requiredLicencedModules(): string[] {
    return [ "ZEI", "ADR" ];
  }
}

Die AppConfiguration muss Injectable sein, da sie dem dem Dependency Injector als Configuration für die Library mitgegeben werden muss. Zusätzliche wird das PxRestApiModule geladen und über PxRestApiModule.forRoot() importiert.

// Root Module (src/app.module.ts)

import { PxRestApiModule, PxConfiguration } from '@proffix/restapi-angular-library';

// ...
imports: [ PxRestApiModule.forRoot() ],
providers: [
  AppConfiguration,
  { provide: PxConfiguration, useExisting: AppConfiguration }
],
// ...

3. Verbindungseinstellungen hinterlegen

Die Verbindungseinstellungen (Klasse ConnectionSettings) werden durch den ConnectionSettingsService im LocalStorage abgelegt.

// Angular Component

import { PxConnectionSettings, PxConnectionSettingsService } from '@proffix/restapi-angular-library';

// ...
constructor(private connectionSettingsService: PxConnectionSettingsService) {
  let connectionSettings: PxConnectionSettings =  {
    WebserviceUrl: "https://restapi.company.invalid",
    WebservicePasswortHash: "d3612ab62..."
  };
  connectionSettingsService.save(connectionSettings);
}

Hinweis: Der SHA256 kann über die statische Methode Hash.sha256 erstellt werden, nachdem die Klasse Hash importiert wurde.

4. Login durchführen

Der Login kann durchgeführt werden, wenn gültige Verbindungseinstellungen hinterlegt wurden.

// Angular Component

import { PxLogin, PxLoginService, PxConfiguration } from '@proffix/restapi-angular-library';

// ...
constructor(private loginService: PxLoginService, private configuration: PxConfiguration) {
  let login: PxLogin =  {
    Benutzer: "pxuser",
    Passwort: "d3612ab62...",
    Datenbank: { Name: "PXDB" },
    Module: this.configuration.getRequiredLicencedModulesAsStringArray() // Die Module können aus der AppConfiguration gelesen werden
  };
  this.loginService.doLogin(login).subscribe( // nur zu Anschauungszwecken, nie HTTP-Requests in einem Konstruktor absetzen
      login => console.log("Login successful: " + login.Benutzer),
      error => console.log("Login failed")
    );
}
3.0.2

5 years ago

2.0.26

5 years ago

2.0.25

5 years ago

2.0.24

5 years ago

2.0.23

5 years ago

3.0.1

5 years ago

3.0.0

5 years ago

2.0.22

5 years ago

2.0.21

5 years ago

2.0.20

5 years ago

2.0.19

6 years ago

2.0.18

6 years ago

2.0.17

6 years ago

2.0.16

6 years ago

2.0.15

6 years ago

2.0.14

6 years ago

2.0.13

6 years ago

2.0.12

6 years ago

2.0.11

6 years ago

2.0.10

6 years ago

2.0.9

6 years ago

2.0.8

6 years ago

2.0.7

6 years ago

2.0.6

6 years ago

2.0.5

6 years ago

2.0.4

6 years ago

2.0.3

6 years ago

2.0.2

6 years ago

2.0.1

6 years ago

2.0.0

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

7 years ago

1.0.0

7 years ago