Тип параметра сбивает с толку

я пытаюсь использовать класс VirtualDirectory и найти отличный пример в Интернете.

import 'dart:io';
import 'package:http_server/http_server.dart';

main() {
    HttpServer.bind('127.0.0.1', 8888).then((HttpServer server) {
        var vd = new VirtualDirectory('./');
        vd.jailRoot = false;
        vd.serve(server);
    });
}

посмотрите на метод вызова serve

vd.serve(server);

и переданный параметр относится к типу httpsserver. Но когда я смотрю в документах API, он ожидал тип httprequest.

StreamSubscription<HttpRequest> serve(Stream<HttpRequest> requests)
Serve a Stream of HttpRequests, in this VirtualDirectory.

Почему я могу передать экземпляр httpsserver для обслуживания вместо экземпляра httpreqeust?


person softshipper    schedule 08.06.2014    source источник


Ответы (1)


См. документацию HttpServer.

HttpServer — это поток, предоставляющий объекты HttpRequest.

person Alexandre Ardhuin    schedule 08.06.2014