API-Client-Generator: Microsoft Kiota lernt den Umgang mit Dart
Der API-Client-Generator Kiota kann nun experimentell mit Dart umgehen. FĂĽr C#, Go, Java und weitere Programmiersprachen ist der Support bereits stabil.
(Bild: TierneyMJ / Shutterstock.com)
Microsoft hat verkündet, dass Kiota als öffentliche Preview nun experimentellen Support für die Programmiersprache Dart erhalten hat. Bei Kiota handelt es sich um einen Client-Generator für von OpenAPI beschriebene APIs. Kiota-API-Clients sollen den Vorteil starker Typisierung bieten sowie Entwicklerinnen und Entwickler davon befreien, für jede HTTP-API eine neue Library erlernen zu müssen.
Videos by heise
Kiota bietet bereits Support für weitere Programmiersprachen wie C#, Go, Java, PHP, Python, Ruby und TypeScript – teils noch experimentell oder als Preview-Feature. Als Community-getriebene Neuerung ist nun experimenteller Support für Dart mit an Bord. Dart ist eine von Google entwickelte, ECMA-standardisierte Programmiersprache mit Fokus auf plattformübergreifende Anwendungen und kommt beispielsweise im Cross-Plattform-Framework Flutter aus gleichem Hause zum Einsatz.
Loslegen mit Kiota und Dart
Kiota lässt sich auf unterschiedliche Weise installieren – beispielsweise als Extension für Visual Studio Code, wie es seit 2023 möglich ist, in einem Docker-Container oder als .NET-Tool. Nach dem Durchlaufen der nächsten notwendigen Schritte, die Microsoft in einer Anleitung beschreibt, steht Dart – experimental als Auswählmöglichkeit beim Erstellen eines neuen API-Clients zur Verfügung. Sobald dieser vorliegt, lässt er sich in einer Dart-Anwendung nutzen. Ein Beispiel, wie sich die API dann mittels API-Key aufrufen lässt, findet sich in der Anleitung:
import '../client/posts_client.dart';
import '../client/models/post.dart';
import 'package:microsoft_kiota_bundle/microsoft_kiota_bundle.dart';
import 'package:microsoft_kiota_abstractions/microsoft_kiota_abstractions.dart';
void main(List<String> arguments) async {
var authenticationProvider = AnonymousAuthenticationProvider();
var requestAdapter =
DefaultRequestAdapter(authProvider: authenticationProvider);
var client = PostsClient(requestAdapter);
// GET /posts/{id}
var specificPostId = 5;
var specificPost = await client.posts.byPostId(specificPostId).getAsync();
print(
'Retrieved post - ID: ${specificPost?.id}, Title: ${specificPost?.title}, Body: ${specificPost?.body}');
// POST /posts
var newPost = Post();
newPost.body = 'Hello world';
newPost.title = 'Testing Kiota-generated API client';
newPost.userId = 42;
var createdPost = await client.posts.postAsync(newPost);
print('Created new post with ID: ${createdPost?.id}');
}
Wie Microsoft betont, sei nicht nur in dieser Phase User-Feedback wertvoll, sondern auch, wenn der Dart-Support in Kiota allgemein verfĂĽgbar sein wird. Dann sollen iterative Verbesserungen zu einem robusten Support beitragen.
Alle weiteren Informationen zum neuen Dart-Support finden sich auf Microsofts Entwicklerblog. Die Kiota-Dokumentation hält weitere Details zum API-Client-Generator bereit.
(mai)