Как я могу добавить промежуточное ПО в конвейер полки, которое добавляет заголовки HTTP по умолчанию к каждому запросу?
Как создать/добавить промежуточное ПО, которое добавляет заголовки по умолчанию к каждому запросу
Ответы (1)
Обновлять
Теперь существует пакет pub для упрощения добавления заголовков CORS
см. https://pub.dartlang.org/packages/shelf_cors
Оригинал
См. также https://groups.google.com/a/dartlang.org/forum/#!topic/cloud/2Vn_IqzGtTc
final Map<String, String> _headers = {'Access-Control-Allow-Origin': '*',
'Content-Type': 'text/html'};
// for OPTIONS (preflight) requests just add headers and an empty response
shelf.Response _options(shelf.Request request) => (request.method == 'OPTIONS') ?
new shelf.Response.ok(null, headers: _headers) : null;
shelf.Response _cors(shelf.Response response) => response.change(headers: _headers);
shelf.Middleware _fixCORS = shelf.createMiddleware(
requestHandler: _options, responseHandler: _cors);
final shelf.Handler handler = const shelf.Pipeline()
.addMiddleware(_fixCORS)
.addMiddleware(shelf.logRequests())
.addMiddleware(exceptionResponse())
.addHandler(routes.handler);
См. также http://thomaslockerambling.blogspot.co.at/2014/10/shelf-middleware-adding-cors-headers.html
person
Günter Zöchbauer
schedule
08.10.2014
Ах. Я пытаюсь реализовать простой веб-сервер с полкой. это немного сложно :(
- person Sungguk Lim; 10.02.2015
Да, у меня тоже было много проблем. У меня есть большинство вещей, которые мне нужны, но я не могу утверждать, что понимаю, почему ;-)
- person Günter Zöchbauer; 10.02.2015
Shelf_cors 0.2.1 => Dart 2 несовместим
- person onetwo12; 16.08.2020