server library
Duxt Server - Shelf-based HTTP server utilities
Import this for server-side API routes:
import 'package:duxt/server.dart';
void main() async {
final server = DuxtServer(port: 3000);
server.get('/api/hello', (req) => json({'message': 'Hello!'}));
server.get('/api/users/:id', (req) {
final id = req.param('id');
return json({'id': id});
});
await server.start();
}
Classes
- ApiHandler
- Base class for API route handlers Handles HTTP methods for server-side API routes
- ApiRequest
- Incoming API request
- ApiResponse
- API response
- DuxtServer
- Duxt Server - Shelf-based HTTP server
Extensions
- RequestExtensions on Request
- Extension to get parsed data from request
Functions
-
auth(
Future< bool> verify(Request)) → Middleware - Auth middleware
-
cors(
{List< String> origins = const ['*'], List<String> methods = const ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS'], List<String> headers = const ['Content-Type', 'Authorization']}) → Middleware - CORS middleware
-
defineEventHandler(
EventHandler handler) → EventHandler - Create an event handler
-
defineHandler(
HandlerFunc fn) → Handler - Create a handler
-
getQuery(
ApiRequest request) → Map< String, String> - Get query parameters
-
getQueryParam(
ApiRequest request, String key) → String? - Get a single query parameter
-
getRouteParams(
ApiRequest request) → Map< String, String> - Get route parameters
-
json(
dynamic data, {int statusCode = 200, Map< String, String> ? headers}) → Response - Helper to create a JSON response
-
jsonBody(
) → Middleware - JSON body parser middleware
-
logger(
) → Middleware - Logger middleware
-
readBody(
ApiRequest request) → Future - Read body as JSON
-
sendError(
int statusCode, String message) → ApiResponse - Send an error
-
sendRedirect(
String location, {int statusCode = 302}) → ApiResponse - Send a redirect
-
setHeader(
ApiResponse response, String name, String value) → ApiResponse - Set response header
Typedefs
-
EventHandler
= Future<
ApiResponse> Function(ApiRequest request) - Define an event handler (for API routes)
-
HandlerFunc
= FutureOr<
Response> Function(Request request) - Define a handler function