Pakete, Repositories und App-Kategorien suchen

Paketdetailsv1.1.5

shelf_router_generator

Ein package:build-kompatibler Builder zum Generieren von Anforderungs-Routern für das Shelf-Web-Framework basierend auf Quellannotierungen.

AndroidiOSmacOSWindowsLinux
30-Tage-Downloads
22.600
Likes
71
Pub-Punkte
140

Paket installieren

flutter pub add shelf_router_generator

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

ShelfRouterGenerator ist ein Build-Zeit-Codegenerator für das Shelf-Web-Framework, der Anforderungsrouter aus Quellannotierungen erstellt. Er ermöglicht Entwicklern, Routen mithilfe einfacher und lesbarer Anmerkungen im Dart-Code zu definieren, die während des Build-Vorgangs verarbeitet werden, um effiziente Routing-Logik zu generieren. Dieser Ansatz reduziert Boilerplate-Code und verbessert die Typensicherheit, indem Routing-Fehler zur Kompilierzeit erkannt werden. Das Paket integriert sich nahtlos in das `package:build`-System und unterstützt alle Hauptplattformen, auf denen Dart läuft.

Anwendungsfälle

  • Definieren von REST-APIs mit annotierten Routenhandlern
  • Generierung sicherer Routenzuordnungen mit Typen
  • Automatisierung von Router-Boilerplate in shelfbasierten Servern
  • Aktivierung der Kompilierzeitüberprüfung von Routenkonfigurationen
  • Vereinfachung komplexer Routing-Strukturen in Webdiensten

Hauptmerkmale

  • Routing-Definition basierend auf Annotationen
  • Codegenerierung zur Build-Zeit
  • typsichere Routing
  • Integration mit Paket: build
  • Unterstützung für plattformunabhängige Serverentwicklung

Geeignet für

  • Entwickler, die Shelf für Backend-Dienste verwenden
  • Teams, die Kompilierzeit-Sicherheit priorisieren
  • Projekte, die minimales Routing-Boilerplate erfordern
  • Dart-Entwickler, die mehrere Plattformen ansprechen
  • API-intensiven Anwendungen mit strukturierter Routing

Hinweise

  • Benötigt build_runner für Codegenerierung
  • Eingeschränkte Laufzeitflexibilität im Vergleich zu dynamischer Routing
  • Verständnis der Build-System-Workflows erforderlich
  • Nicht geeignet für die Laufzeit-Routenkonfiguration
  • Kann die Build-Zeiten leicht erhöhen

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

Build Status

About Shelf

Shelf makes it easy to create and compose web servers and parts of web servers. How?

  • Expose a small set of simple types.
  • Map server logic into a simple function: a single argument for the request, the response is the return value.
  • Trivially mix and match synchronous and asynchronous processing.
  • Flexibility to return a simple string or a byte stream with the same model.

It was inspired by Connect for NodeJS and Rack for Ruby.

See the package:shelf readme for more information.

Packages

Package Description Issues Version
shelf A model for web server middleware that encourages composition and easy reuse. issues pub package
shelf_packages_handler A shelf handler for serving a packages/ directory. issues pub package
shelf_proxy A shelf handler for proxying HTTP requests to another server. issues pub package
shelf_router A convenient request router for the shelf web-framework, with support for URL-parameters, nested routers and routers generated from source annotations. issues pub package
shelf_router_generator A package:build-compatible builder for generating request routers for the shelf web-framework based on source annotations. issues pub package
shelf_static Static file server support for the shelf package and ecosystem. issues pub package
shelf_test_handler A Shelf handler that makes it easy to test HTTP interactions. issues pub package
shelf_web_socket A shelf handler that wires up a listener for every connection. issues pub package
_shelf_compliance HTTP/1.1 compliance and hardening tests. issues (not published)

Publishing automation

For information about our publishing automation and release process, see https://github.com/dart-lang/ecosystem/wiki/Publishing-automation.

Kategorien

Abhängigkeiten

Abhängigkeiten 8 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden