WebRequest.EndGetRequestStream メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > WebRequest.EndGetRequestStream メソッドの意味・解説 

WebRequest.EndGetRequestStream メソッド

派生クラスオーバーライドされると、インターネット リソースデータ書き込むための Stream返します

名前空間: System.Net
アセンブリ: System (system.dll 内)
構文構文

Public Overridable Function
 EndGetRequestStream ( _
    asyncResult As IAsyncResult _
) As Stream
Dim instance As WebRequest
Dim asyncResult As IAsyncResult
Dim returnValue As Stream

returnValue = instance.EndGetRequestStream(asyncResult)
public virtual Stream EndGetRequestStream (
    IAsyncResult asyncResult
)
public:
virtual Stream^ EndGetRequestStream (
    IAsyncResult^ asyncResult
)
public Stream EndGetRequestStream (
    IAsyncResult asyncResult
)
public function EndGetRequestStream (
    asyncResult : IAsyncResult
) : Stream

パラメータ

asyncResult

ストリーム保留中の要求参照する IAsyncResult。

戻り値
データ書き込む Stream

例外例外
例外種類条件

NotImplementedException

メソッド派生クラスオーバーライドされていないのに、そのメソッドへのアクセス試行されました。

解説解説

EndGetRequestStream メソッドは、BeginGetRequestStream メソッド開始したストリーム非同期要求完了します

メモメモ

ガベージ コレクションタイミングに関する問題回避するには、EndGetResponse を呼び出した後に、GetResponseStream によって返されるストリームClose メソッド呼び出して応答ストリーム閉じてください

メモメモ

WebRequest クラスは、abstract クラスです。実行時WebRequest インスタンス実際動作は、System.Net.WebRequest.Create メソッド返される派生クラスによって決まります既定値および例外詳細については、HttpWebRequest や FileWebRequest などの派生クラス説明参照してください

使用例使用例

EndGetRequestStream呼び出して要求ストリーム取得および使用する例を次に示しますEndGetRequestStream メソッドは、BeginGetRequestStream への非同期呼び出し完了します

Imports System
Imports System.Net
Imports System.IO
Imports System.Text
Imports System.Threading
Imports Microsoft.VisualBasic

Public Class RequestState
    ' This class stores the request state of the request.
    Public request As WebRequest
    
    Public Sub New()
        request = Nothing
    End Sub ' New
End Class ' RequestState


Class WebRequest_BeginGetRequeststream
    Public Shared allDone As
 New ManualResetEvent(False)
    
    Shared Sub Main()
          ' Create a new request.
            Dim myWebRequest As WebRequest
 = WebRequest.Create("http://www.contoso.com/codesnippets/next.asp")
 ' Create an instance of the RequestState and assign 
            ' myWebRequest' to it's request field.
            Dim myRequestState As New
 RequestState()
            myRequestState.request = myWebRequest
            myWebRequest.ContentType = "application/x-www-form-urlencoded"

            ' Set the 'Method' property  to 'POST' to post data to a
 Uri.
            myRequestState.request.Method = "POST"
            ' Start the asynchronous 'BeginGetRequestStream' method
 call.
            Dim r As IAsyncResult = CType(myWebRequest.BeginGetRequestStream(AddressOf
 ReadCallback, myRequestState), IAsyncResult)
            ' Pause the current thread until the async operation completes.
            allDone.WaitOne()
            ' Send the Post and get the response.
            Dim myWebResponse As WebResponse
 = myWebRequest.GetResponse()
            Console.WriteLine(ControlChars.Cr + "The string has
 been posted.")
            Console.WriteLine("Please wait for the response....")
            Dim streamResponse As Stream =
 myWebResponse.GetResponseStream()
            Dim streamRead As New
 StreamReader(streamResponse)
            Dim readBuff(256) As [Char]
            Dim count As Integer
 = streamRead.Read(readBuff, 0, 256)
            Console.WriteLine(ControlChars.Cr + "The contents
 of the HTML page are ")
            While count > 0
                Dim outputData As New
 [String](readBuff, 0, count)
                Console.WriteLine(outputData)
                count = streamRead.Read(readBuff, 0, 256)
            End While

           ' Close the Stream Object.
            streamResponse.Close()
            streamRead.Close()
            ' Release the HttpWebResponse Resource.
             myWebResponse.Close()
    End Sub ' Main
     
    Private Shared Sub ReadCallback(asynchronousResult
 As IAsyncResult)
            Dim myRequestState As RequestState
 = CType(asynchronousResult.AsyncState, RequestState)
            Dim myWebRequest As WebRequest
 = myRequestState.request
            ' End the request.
            Dim streamResponse As Stream =
 myWebRequest.EndGetRequestStream(asynchronousResult)
            ' Create a string that is to be posted to the uri.
            Console.WriteLine(ControlChars.Cr + "Please enter
 a string to be posted:")
            Dim postData As String
 = Console.ReadLine()
            Dim encoder As New
 ASCIIEncoding()
            ' Convert  the string into a byte array.
            Dim byteArray As Byte()
 = Encoding.UTF8.GetBytes(postData)
            ' Write the data to the stream.
            streamResponse.Write(byteArray, 0, postData.Length)
            streamResponse.Close()
            ' Allow the main thread to resume.
            allDone.Set()
    End Sub ' ReadCallback 
End Class ' WebRequest_BeginGetRequeststream
 
using System;
using System.Net;
using System.IO;
using System.Text;
using System.Threading;

public class RequestState
{
    // This class stores the request state of the request.
    public WebRequest request;    
    public RequestState()
    {
        request = null;
    }
}

class WebRequest_BeginGetRequeststream
{
    public static ManualResetEvent allDone=
 new ManualResetEvent(false);
    static void Main()
    {
            // Create a new request to the mentioned URL.    
            WebRequest myWebRequest= WebRequest.Create("http://www.contoso.com");

            // Create an instance of the RequestState and assign 
            // 'myWebRequest' to it's request field.    
            RequestState myRequestState = new RequestState();
            myRequestState.request = myWebRequest;            
            myWebRequest.ContentType="application/x-www-form-urlencoded";

            // Set the 'Method' property  to 'POST' to post data to
 a Uri.
            myRequestState.request.Method="POST";
            // Start the Asynchronous 'BeginGetRequestStream' method
 call.    
            IAsyncResult r=(IAsyncResult) myWebRequest.BeginGetRequestStream(
                new AsyncCallback(ReadCallback),myRequestState);
            // Pause the current thread until the async operation completes.
            Console.WriteLine("main thread waiting...");
            allDone.WaitOne();   
            // Assign the response object of 'WebRequest' to a 'WebResponse'
 variable.
            WebResponse myWebResponse = myWebRequest.GetResponse();
            Console.WriteLine("The string has been posted.");
    
            Console.WriteLine("Please wait for the response...");

            Stream streamResponse = myWebResponse.GetResponseStream();
            StreamReader streamRead = new StreamReader( streamResponse
 );
            Char[] readBuff = new Char[256];
            int count = streamRead.Read( readBuff, 0, 256 );
            Console.WriteLine("\nThe contents of the HTML page are ");
    

            while (count > 0) 
            {
                String outputData = new String(readBuff, 0, count);
                Console.Write(outputData);
                count = streamRead.Read(readBuff, 0, 256);
            }

            // Close the Stream Object.
            streamResponse.Close();
            streamRead.Close();
 

            // Release the HttpWebResponse Resource.
            myWebResponse.Close();            
    }
    private static void
 ReadCallback(IAsyncResult asynchronousResult)
    {
            RequestState myRequestState =(RequestState) asynchronousResult.AsyncState;
            WebRequest  myWebRequest = myRequestState.request;

            // End the Asynchronus request.
            Stream streamResponse = myWebRequest.EndGetRequestStream(asynchronousResult);

            // Create a string that is to be posted to the uri.
            Console.WriteLine("Please enter a string to be
 posted:");
            string postData = Console.ReadLine();
            // Convert the string into a byte array.
            byte[] byteArray = Encoding.UTF8.GetBytes(postData);

            // Write the data to the stream.
            streamResponse.Write(byteArray,0,postData.Length);
            streamResponse.Close();
            allDone.Set();
    }
}
#using <System.dll>

using namespace System;
using namespace System::Net;
using namespace System::IO;
using namespace System::Text;
using namespace System::Threading;
public ref class RequestState
{
public:

   // This class stores the request state of the request.
   WebRequest^ request;
   RequestState()
   {
      request = nullptr;
   }

};

ref class WebRequest_BeginGetRequeststream
{
public:
   static ManualResetEvent^ allDone = gcnew ManualResetEvent(
 false );
   static void ReadCallback( IAsyncResult^
 asynchronousResult )
   {
      RequestState^ myRequestState = dynamic_cast<RequestState^>(asynchronousResult->AsyncState);
      WebRequest^ myWebRequest = myRequestState->request;
      
      // End of the Asynchronus request.
      Stream^ streamResponse = myWebRequest->EndGetRequestStream( asynchronousResult
 );
      
      // Create a string that is to be posted to the uri.
      Console::WriteLine( "Please enter a string to be posted:"
 );
      String^ postData = Console::ReadLine();
      
      // Convert  the string into a Byte array.
      array<Byte>^byteArray = Encoding::UTF8->GetBytes( postData );
      
      // Write data to the stream.
      streamResponse->Write( byteArray, 0, postData->Length );
      streamResponse->Close();
      allDone->Set();
   }

};

int main()
{
   
   // Create a new request to the mentioned URL.
   WebRequest^ myWebRequest = WebRequest::Create( "http://www.contoso.com"
 );
   
   // Create an instance of the RequestState and assign 'myWebRequest'
 to its request field.
   RequestState^ myRequestState = gcnew RequestState;
   myRequestState->request = myWebRequest;
   myWebRequest->ContentType = "application/x-www-form-urlencoded";
   
   // Set the 'Method' prperty  to 'POST' to post data to a Uri.
   myRequestState->request->Method = "POST";
   
   // Start the Asynchronous 'BeginGetRequestStream' method call.
   IAsyncResult^ r = dynamic_cast<IAsyncResult^>(myWebRequest->BeginGetRequestStream(
 gcnew AsyncCallback( WebRequest_BeginGetRequeststream::ReadCallback ), myRequestState
 ));
   WebRequest_BeginGetRequeststream::allDone->WaitOne();
   WebResponse^ myWebResponse = myWebRequest->GetResponse();
   Console::WriteLine( "The String* entered has been posted." );
   Console::WriteLine( "Please wait for the response..."
 );
   Stream^ streamResponse = myWebResponse->GetResponseStream();
   StreamReader^ streamRead = gcnew StreamReader( streamResponse );
   array<Char>^readBuff = gcnew array<Char>(256);
   int count = streamRead->Read( readBuff, 0, 256 );
   Console::WriteLine( "The contents of the HTML page are " );
   while ( count > 0 )
   {
      String^ outputData = gcnew String( readBuff,0,count );
      Console::Write( outputData );
      count = streamRead->Read( readBuff, 0, 256 );
   }

   streamResponse->Close();
   streamRead->Close();
   
   // Release the HttpWebResponse Resource.
   myWebResponse->Close();
}

import System.*;
import System.Net.*;
import System.IO.*;
import System.Text.*;
import System.Threading.*;
public class RequestState
{
    // This class stores the request state of the request.
    public WebRequest request;

    public RequestState()
    {
        request = null;
    } //RequestState
} //RequestState

class WebRequest_BeginGetRequeststream
{
    public static ManualResetEvent allDone
 = new ManualResetEvent(false);

    public static void main(String[]
 args)
    {
        // Create a new request to the mentioned URL.    
        WebRequest myWebRequest = WebRequest.Create("http://www.contoso.com");
        // Create an instance of the RequestState and assign 
        // 'myWebRequest' to it's request field.    
        RequestState myRequestState = new RequestState();
        myRequestState.request = myWebRequest;
        myWebRequest.set_ContentType("application/x-www-form-urlencoded");
        // Set the 'Method' property  to 'POST' to post data to a Uri.
        myRequestState.request.set_Method("POST");

        // Start the Asynchronous 'BeginGetRequestStream' method call.
    
        IAsyncResult r = (IAsyncResult)(myWebRequest.BeginGetRequestStream(
            new AsyncCallback(ReadCallback), myRequestState));
        // Pause the current thread until the async operation completes.
        Console.WriteLine("main thread waiting...");
        allDone.WaitOne();
        // Assign the response object of 'WebRequest' to a 'WebResponse'
 
        // variable.
        WebResponse myWebResponse = myWebRequest.GetResponse();
        Console.WriteLine("The string has been posted.");
        Console.WriteLine("Please wait for the response...");

        Stream streamResponse = myWebResponse.GetResponseStream();
        StreamReader streamRead = new StreamReader(streamResponse);
        char readBuff[] = new char[256];
        int count = streamRead.Read(readBuff, 0, 256);
        Console.WriteLine("\nThe contents of the HTML page are ");

        while (count > 0) {
            String outputData = new String(readBuff, 0, count);
            Console.Write(outputData);
            count = streamRead.Read(readBuff, 0, 256);
        }
        // Close the Stream Object.
        streamResponse.Close();
        streamRead.Close();
        // Release the HttpWebResponse Resource.
        myWebResponse.Close();
    } //main

    private static void
 ReadCallback(IAsyncResult asynchronousResult)
    {
        RequestState myRequestState = 
            (RequestState) asynchronousResult.get_AsyncState();
        WebRequest myWebRequest = myRequestState.request;
        // End the Asynchronus request.
        Stream streamResponse = myWebRequest.EndGetRequestStream(
            asynchronousResult);
        // Create a string that is to be posted to the uri.
        Console.WriteLine("Please enter a string to be posted:");
        String postData = Console.ReadLine();
        // Convert the string into a byte array.
        ubyte byteArray[] = Encoding.get_UTF8().GetBytes(postData);
        // Write the data to the stream.
        streamResponse.Write(byteArray, 0, postData.get_Length());
        streamResponse.Close();
        allDone.Set();
    } //ReadCallback
} //WebRequest_BeginGetRequeststream
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照


このページでは「.NET Framework クラス ライブラリ リファレンス」からWebRequest.EndGetRequestStream メソッドを検索した結果を表示しています。
Weblioに収録されているすべての辞書からWebRequest.EndGetRequestStream メソッドを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からWebRequest.EndGetRequestStream メソッド を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

WebRequest.EndGetRequestStream メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



WebRequest.EndGetRequestStream メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS