corsMiddleware top-level property
Middleware
corsMiddleware
final
Implementation
final corsMiddleware = middleware(
onRequest: (rq) async => switch (rq.method) {
'options' => Response(
204,
Body(),
Headers.from({
'Access-Control-Allow-Methods':
rq.headers['Access-Control-Request-Method'] ??
const ['POST', 'GET', 'DELETE', 'PATCH', 'OPTIONS'],
'Access-Control-Allow-Headers':
rq.headers['Access-Control-Request-Headers'] ?? const ['*'],
})),
_ => null
},
onResponse: (rs, rq) async => rs
..headers.addAll({
'Access-Control-Allow-Origin': [rq.headers['origin']?.last ?? '*'],
'Access-Control-Expose-Headers': const ['Location'],
}));