87 lines
No EOL
2.3 KiB
Markdown
87 lines
No EOL
2.3 KiB
Markdown
# ff-admin-webapi-client
|
|
|
|
FF Admin Webapi Client ist ein NPM-Package, welches die Verbindung zu einem FF Admin-Server vereinfacht.
|
|
|
|
Zur Verfügung gestellt werden Requests mit den benötigten Models, Types und Enums für FF Admin.
|
|
|
|
Der WebApiClient realisiert den automatischen refresh von Zugangs-Tokens.
|
|
|
|
Installation:
|
|
``` npmrc
|
|
@ff-admin:registry=https://npm.registry.jk-effects.cloud
|
|
//npm.registry.jk-effects.cloud/:_authToken="xxx" # hier optional token einfügen - ff-admin packages sind öffentlich
|
|
```
|
|
|
|
``` bash
|
|
npm install @ff-admin/webapi-client
|
|
```
|
|
|
|
Beispiele:
|
|
1. Verwendung des Clients:
|
|
``` ts
|
|
import { WebApiClient, AdminRequests } from "@ff-admin/webapi-client"
|
|
|
|
let myClient = new WebApiClient({
|
|
serverAdress: "",
|
|
webapiToken: ""
|
|
});
|
|
myClient.initialize() // asynchrone Funktion - muss vollständig ausgeführt sein, bevor irgendwelche Anfragen gestellt werden
|
|
```
|
|
2. Nutzung der Requests
|
|
```ts
|
|
let data = AdminRequests.MemberRequests.getAllMembers(myClient)
|
|
.then((res) => {
|
|
console.log(res)
|
|
})
|
|
.catch((err) => {
|
|
console.log(err)
|
|
})
|
|
|
|
let newMemberId = AdminRequests.MemberRequests.updateMember(myClient, {
|
|
body: {
|
|
salutationId: 0,
|
|
firstname: "",
|
|
lastname: "",
|
|
nameaffix: "",
|
|
birthdate: new Date("")
|
|
}
|
|
})
|
|
.then(() => {})
|
|
.catch(() => {});
|
|
|
|
AdminRequests.MemberRequests.updateMember(myClient, {
|
|
params: { id: "123" },
|
|
body: {
|
|
salutationId: 0,
|
|
firstname: "",
|
|
lastname: "",
|
|
nameaffix: "",
|
|
birthdate: new Date(""),
|
|
},
|
|
})
|
|
.then(() => {})
|
|
.catch(() => {});
|
|
```
|
|
3. Zugriff auf Typen, Models und Enums:
|
|
``` ts
|
|
import { AdminModels, AdminTypes, AdminEnums } from "@ff-admin/webapi-client"
|
|
|
|
let model: AdminModels.MemberModels.CreateMemberViewModel;
|
|
let type: AdminTypes.DynamicQueries.DynamicQueryStructure
|
|
let enum = AdminEnums.NewsletterType.NewsletterConfigType.mail
|
|
```
|
|
4. http Events:
|
|
Es können Events wie Fehler oder Informationen direkt aus der Middleware des Clients angezapft werden.
|
|
``` ts
|
|
import { WebApiClient, AdminRequests } from "@ff-admin/webapi-client"
|
|
|
|
let myClient = new WebApiClient({
|
|
serverAdress: "",
|
|
webapiToken: ""
|
|
});
|
|
myClient.initialize()
|
|
|
|
client.httpEvents.on(<"error" | "info">, (data) => {})
|
|
```
|
|
|
|
zum Package: https://npm.registry.jk-effects.cloud/-/web/detail/@ff-admin/webapi-client |