Sdílet prostřednictvím


HttpRequest.GetBufferlessInputStream Metoda

Definice

Získá Stream objekt, který lze použít ke čtení textu příchozí entity HTTP.

Přetížení

GetBufferlessInputStream()

Získá Stream objekt, který lze použít ke čtení textu příchozí entity HTTP.

GetBufferlessInputStream(Boolean)

Stream Získá objekt, který lze použít ke čtení příchozího textu entity HTTP, volitelně zakázání limitu délky požadavku, který je nastaven ve MaxRequestLength vlastnosti.

GetBufferlessInputStream()

Získá Stream objekt, který lze použít ke čtení textu příchozí entity HTTP.

public:
 System::IO::Stream ^ GetBufferlessInputStream();
public System.IO.Stream GetBufferlessInputStream ();
member this.GetBufferlessInputStream : unit -> System.IO.Stream
Public Function GetBufferlessInputStream () As Stream

Návraty

Objekt Stream , který lze použít ke čtení textu příchozí entity HTTP.

Výjimky

Tělo entity požadavku už bylo načteno a analyzováno. Příklady vlastností, které způsobují načtení a analýzu těla entity, patří následující:

Chcete-li se této výjimce vyhnout, zavolejte nejprve metodu ReadEntityBodyMode . Tato výjimka se vyvolá také v případě, že se klient odpojí během čtení těla entity.

Poznámky

Tato metoda poskytuje alternativu k použití InputStream vlastnosti. Vlastnost InputStream počká na přijetí celého požadavku, než vrátí Stream objekt. Naproti tomu GetBufferlessInputStream metoda vrátí objekt okamžitě Stream . Pomocí metody můžete začít zpracovávat tělo entity před obdržením úplného obsahu těla.

Tělo entity (nebo tolik, kolik požadujete a byla přijata) se vrátí pouze v případě, že použijete objekt vrácený touto metodou ke čtení datového proudu voláním metod, jako Read je metoda. Pomocí parametrů Read metody určíte, kolik těla entity se má číst.

Objekt Stream vrácený ASP.NET z této metody podporuje synchronní i asynchronní metody čtení. Objekt Stream implementuje metody a BeginReadEndRead . Asynchronní metody umožňují asynchronně číst entitu požadavku v blocích, zatímco ASP.NET uvolní aktuální vlákno mezi každou iterací asynchronní smyčky čtení.

Tato metoda může být užitečná, pokud požadavek nahrává velký soubor a chcete zahájit přístup k obsahu souboru před dokončením nahrávání. Tuto metodu byste ale měli použít pouze ve scénářích, ve kterých chcete převzít veškeré zpracování těla entity. To znamená, že tuto metodu nelze použít ze stránky .aspx, protože v době spuštění stránky .aspx bylo tělo entity již přečteno.

Viz také

Platí pro

GetBufferlessInputStream(Boolean)

Stream Získá objekt, který lze použít ke čtení příchozího textu entity HTTP, volitelně zakázání limitu délky požadavku, který je nastaven ve MaxRequestLength vlastnosti.

public:
 System::IO::Stream ^ GetBufferlessInputStream(bool disableMaxRequestLength);
public System.IO.Stream GetBufferlessInputStream (bool disableMaxRequestLength);
member this.GetBufferlessInputStream : bool -> System.IO.Stream
Public Function GetBufferlessInputStream (disableMaxRequestLength As Boolean) As Stream

Parametry

disableMaxRequestLength
Boolean

truek zakázání limitu délky požadavků; v opačném případě . false

Návraty

Objekt Stream , který lze použít ke čtení textu příchozí entity HTTP.

Výjimky

Tělo entity požadavku už bylo načteno a analyzováno. Příklady vlastností, které způsobují načtení a analýzu těla entity, patří následující:

Chcete-li se této výjimce vyhnout, zavolejte nejprve metodu ReadEntityBodyMode . Tato výjimka se vyvolá také v případě, že se klient odpojí během čtení těla entity.

Poznámky

Další informace o této metodě najdete v GetBufferlessInputStream() tématu přetížení.

Viz také

Platí pro