Share via


FileWebRequest Kelas

Definisi

Menyediakan implementasi sistem file kelas WebRequest .

public ref class FileWebRequest : System::Net::WebRequest, System::Runtime::Serialization::ISerializable
public ref class FileWebRequest : System::Net::WebRequest
public class FileWebRequest : System.Net.WebRequest, System.Runtime.Serialization.ISerializable
[System.Serializable]
public class FileWebRequest : System.Net.WebRequest, System.Runtime.Serialization.ISerializable
public class FileWebRequest : System.Net.WebRequest
type FileWebRequest = class
    inherit WebRequest
    interface ISerializable
[<System.Serializable>]
type FileWebRequest = class
    inherit WebRequest
    interface ISerializable
Public Class FileWebRequest
Inherits WebRequest
Implements ISerializable
Public Class FileWebRequest
Inherits WebRequest
Warisan
Atribut
Penerapan

Contoh

Contoh kode berikut menggunakan FileWebRequest kelas untuk mengakses sumber daya sistem file.

// This program creates or open a text file in which it stores a string.
// Both file and string are passed by the user.
// Note. In order for this program to work, the folder containing the test file
// must be shared with its permissions set to allow write access.
#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Text;
using namespace System::Net;
ref class TestGetRequestStream
{
private:
   static FileWebRequest^ myFileWebRequest;
   static void showUsage()
   {
      Console::WriteLine( "\nPlease enter file name and timeout :" );
      Console::WriteLine( "Usage: cs_getrequeststream <systemname>/<sharedfoldername>/<filename> timeout" );
      Console::WriteLine( "Example: cs_getrequeststream ndpue/temp/hello.txt 1000" );
      Console::WriteLine( "Small timeout values (for instance 3 or less) cause a timeout exception." );
   }

   static void makeFileRequest( String^ fileName, int timeout )
   {
      try
      {
         
         // Create a Uri object.
         Uri^ myUrl = gcnew Uri( String::Format( "file://{0}", fileName ) );
         
         // Create a FileWebRequest object.
         myFileWebRequest = dynamic_cast<FileWebRequest^>(WebRequest::CreateDefault( myUrl ));
         
         // Set the timeout to the value selected by the user.
         myFileWebRequest->Timeout = timeout;
         
         // Set the Method property to POST
         myFileWebRequest->Method = "POST";
         
      }
      catch ( WebException^ e ) 
      {
         Console::WriteLine( "WebException: {0}", e->Message );
      }
      catch ( UriFormatException^ e ) 
      {
         Console::WriteLine( "UriFormatWebException: {0}", e->Message );
      }

   }

   static void writeToFile()
   {
      try
      {
         
         // Enter the string to write into the file.
         Console::WriteLine( "Enter the string you want to write:" );
         String^ userInput = Console::ReadLine();
         
         // Convert the string to Byte array.
         ASCIIEncoding^ encoder = gcnew ASCIIEncoding;
         array<Byte>^byteArray = encoder->GetBytes( userInput );
         
         // Set the ContentLength property.
         myFileWebRequest->ContentLength = byteArray->Length;
         String^ contentLength = myFileWebRequest->ContentLength.ToString();
         Console::WriteLine( "\nThe content length is {0}.", contentLength );
         
         // Get the file stream handler to write into the file.
         Stream^ readStream = myFileWebRequest->GetRequestStream();
         
         // Write to the file stream.
         // Note. In order for this to work the file must be accessible
         // on the network. This can be accomplished by setting the property
         // sharing of the folder containg the file. The permissions
         // can be set so everyone can modify the file.
         // FileWebRequest::Credentials property cannot be used for this purpose.
         readStream->Write( byteArray, 0, userInput->Length );
         Console::WriteLine( "\nThe String you entered was successfully written into the file." );
         
         readStream->Close();
      }
      catch ( WebException^ e ) 
      {
         Console::WriteLine( "The WebException: {0}", e->Message );
      }
      catch ( UriFormatException^ e ) 
      {
         Console::WriteLine( "The UriFormatWebException: {0}", e->Message );
      }

   }


public:
   static void Main()
   {
      array<String^>^args = Environment::GetCommandLineArgs();
      if ( args->Length < 3 )
            showUsage();
      else
      {
         makeFileRequest( args[ 1 ], Int32::Parse( args[ 2 ] ) );
         writeToFile();
      }
   }

};

int main()
{
   TestGetRequestStream::Main();
}
// This example creates or opens a text file and stores a string in it.
// Both the file and the string are passed by the user.
// Note. For this program to work, the folder containing the test file
// must be shared, with its permissions set to allow write access.
using System.Net;
using System;
using System.IO;
using System.Text;

namespace Mssc.PluggableProtocols.File
{
    class TestGetRequestStream
    {
        private static FileWebRequest myFileWebRequest;

        private static void showUsage ()
        {
            Console.WriteLine ("\nPlease enter file name and timeout :");
            Console.WriteLine ("Usage: cs_getrequeststream <systemname>/<sharedfoldername>/<filename> timeout");
            Console.WriteLine ("Example: cs_getrequeststream ngetrequestrtream() ndpue/temp/hello.txt  1000");
            Console.WriteLine ("Small time-out values (for example, 3 or less) cause a time-out exception.");
        }

        private static void makeFileRequest (string fileName, int timeout)
        {
            try
            {
                // Create a Uri object.
                Uri myUrl = new Uri ("file://" + fileName);

                // Create a FileWebRequest object.
                myFileWebRequest = (FileWebRequest)WebRequest.CreateDefault (myUrl);

                // Set the time-out to the value selected by the user.
                myFileWebRequest.Timeout = timeout;

                // Set the Method property to POST
                myFileWebRequest.Method = "POST";
            }
            catch (WebException e)
            {
                Console.WriteLine ("WebException: " + e.Message);
            }
            catch (UriFormatException e)
            {
                Console.WriteLine ("UriFormatWebException: " + e.Message);
            }
        }

        private static void writeToFile ()
        {
            try
            {
                // Enter the string to write to the file.
                Console.WriteLine ("Enter the string you want to write:");

                string userInput = Console.ReadLine ();

                // Convert the string to a byte array.
                ASCIIEncoding encoder = new ASCIIEncoding ();
                byte[] byteArray = encoder.GetBytes (userInput);

                // Set the ContentLength property.
                myFileWebRequest.ContentLength = byteArray.Length;

                string contentLength = myFileWebRequest.ContentLength.ToString ();

                Console.WriteLine ("\nThe content length is {0}.", contentLength);

                // Get the file stream handler to write to the file.
                Stream readStream = myFileWebRequest.GetRequestStream ();

                // Write to the file stream.
                // Note.  For this to work, the file must be accessible
                // on the network. This can be accomplished by setting the property
                // sharing of the folder containg the file.
                // FileWebRequest.Credentials property cannot be used for this purpose.
                readStream.Write (byteArray, 0, userInput.Length);
                Console.WriteLine ("\nThe String you entered was successfully written to the file.");

                readStream.Close ();
            }
            catch (WebException e)
            {
                Console.WriteLine ("The WebException: " + e.Message);
            }
            catch (UriFormatException e)
            {
                Console.WriteLine ("The UriFormatWebException: " + e.Message);
            }
        }

        public static void Main (String[] args)
        {
            if (args.Length < 2)
            {
                showUsage ();
            }
            else
            {
                makeFileRequest (args[0], int.Parse (args[1]));
                writeToFile ();
            }
        }
    }
}
'
' This example creates or opens a text file and stores a string in it. 
' Both the file and the string are passed by the user.
' Note. For this program to work, the folder containing the test file
' must be shared, with its permissions set to allow write access. 

Imports System.Net
Imports System.IO
Imports System.Text

Namespace Mssc.PluggableProtocols.File

    Module TestGetRequestStream

        Class TestGetRequestStream

            Private Shared myFileWebRequest As FileWebRequest

            ' Show how to use this program.
            Private Shared Sub showUsage()
                Console.WriteLine(ControlChars.Lf + "Please enter file name and timeout :")
                Console.WriteLine("Usage: vb_getrequeststream <systemname>/<sharedfoldername>/<filename> timeout")
                Console.WriteLine("Example: vb_getrequeststream ngetrequestrtream() ndpue/temp/hello.txt  1000")
                Console.WriteLine("Small time-out values (for example, 3 or less) cause a time-out exception.")
            End Sub

            Private Shared Sub makeFileRequest(ByVal fileName As String, ByVal timeout As Integer)
                Try
                    ' Create a Uri object.to access the file requested by the user. 
                    Dim myUrl As New Uri("file://" + fileName)

                    ' Create a FileWebRequest object.for the requeste file.
                    myFileWebRequest = CType(WebRequest.CreateDefault(myUrl), FileWebRequest)

                    ' Set the time-out to the value selected by the user.
                    myFileWebRequest.Timeout = timeout

                    ' Set the Method property to POST  
                    myFileWebRequest.Method = "POST"


                Catch e As WebException
                    Console.WriteLine(("WebException is: " + e.Message))
                Catch e As UriFormatException
                    Console.WriteLine(("UriFormatWebException is: " + e.Message))
                End Try

            End Sub

            Private Shared Sub writeToFile()
                Try
                    ' Enter the string to write to the file.
                    Console.WriteLine("Enter the string you want to write:")
                    Dim userInput As String = Console.ReadLine()

                    ' Convert the string to a byte array.
                    Dim encoder As New ASCIIEncoding
                    Dim byteArray As Byte() = encoder.GetBytes(userInput)

                    ' Set the ContentLength property.
                    myFileWebRequest.ContentLength = byteArray.Length

                    Dim contentLength As String = myFileWebRequest.ContentLength.ToString()

                    Console.WriteLine(ControlChars.Lf + "The content length is {0}.", contentLength)


                    ' Get the file stream handler to write to the file.
                    Dim readStream As Stream = myFileWebRequest.GetRequestStream()

                    ' Write to the stream. 
                    ' Note. For this to work the file must be accessible
                    ' on the network. This can be accomplished by setting the property
                    ' sharing of the folder containg the file.  
                    ' FileWebRequest.Credentials property cannot be used for this purpose.
                    readStream.Write(byteArray, 0, userInput.Length)


                    Console.WriteLine(ControlChars.Lf + "The String you entered was successfully written to the file.")

                    readStream.Close()

                Catch e As WebException
                    Console.WriteLine(("WebException is: " + e.Message))
                Catch e As UriFormatException
                    Console.WriteLine(("UriFormatWebException is: " + e.Message))
                End Try

            End Sub

            Public Shared Sub Main(ByVal args() As String)

                If args.Length < 2 Then
                    showUsage()
                Else
                    makeFileRequest(args(0), Integer.Parse(args(1)))
                    writeToFile()
                End If

            End Sub

        End Class



    End Module

End Namespace

Keterangan

Kelas FileWebRequest mengimplementasikan WebRequestabstract kelas dasar untuk Pengidentifikasi Sumber Daya Seragam (URI) yang menggunakan file:// skema untuk meminta file lokal.

Jangan gunakan FileWebRequest konstruktor. WebRequest.Create Gunakan metode untuk menginisialisasi instans FileWebRequest baru kelas. Jika skema URI adalah file://, Create metode mengembalikan FileWebRequest objek .

Metode ini GetResponse membuat permintaan sinkron untuk file yang ditentukan dalam RequestUri properti dan mengembalikan FileWebResponse objek yang berisi respons. Anda dapat membuat permintaan asinkron untuk file menggunakan BeginGetResponse metode dan EndGetResponse .

Saat Anda ingin menulis data ke file, GetRequestStream metode mengembalikan instans untuk Stream ditulis. Metode BeginGetRequestStream dan EndGetRequestStream menyediakan akses asinkron ke aliran data tulis.

Kelas FileWebRequest bergantung pada File kelas untuk penanganan kesalahan dan keamanan akses kode.

Konstruktor

FileWebRequest(SerializationInfo, StreamingContext)
Kedaluwarsa.
Kedaluwarsa.
Kedaluwarsa.

Menginisialisasi instans FileWebRequest baru kelas dari instans SerializationInfo dan StreamingContext kelas yang ditentukan.

Properti

AuthenticationLevel

Mendapatkan atau menetapkan nilai yang menunjukkan tingkat autentikasi dan peniruan yang digunakan untuk permintaan ini.

(Diperoleh dari WebRequest)
CachePolicy

Mendapatkan atau menetapkan kebijakan cache untuk permintaan ini.

(Diperoleh dari WebRequest)
ConnectionGroupName

Mendapatkan atau mengatur nama grup koneksi untuk permintaan tersebut. Properti ini dicadangkan untuk digunakan di masa mendatang.

ContentLength

Mendapatkan atau mengatur panjang konten data yang dikirim.

ContentType

Mendapatkan atau mengatur tipe konten data yang dikirim. Properti ini dicadangkan untuk digunakan di masa mendatang.

CreatorInstance
Kedaluwarsa.

Ketika ditimpa di kelas turunan, mendapatkan objek pabrik yang berasal dari kelas yang IWebRequestCreate digunakan untuk membuat WebRequest instans untuk membuat permintaan ke URI yang ditentukan.

(Diperoleh dari WebRequest)
Credentials

Mendapatkan atau mengatur kredensial yang terkait dengan permintaan ini. Properti ini dicadangkan untuk digunakan di masa mendatang.

Headers

Mendapatkan kumpulan pasangan nama/nilai yang terkait dengan permintaan. Properti ini dicadangkan untuk digunakan di masa mendatang.

ImpersonationLevel

Mendapatkan atau mengatur tingkat peniruan untuk permintaan saat ini.

(Diperoleh dari WebRequest)
Method

Mendapatkan atau mengatur metode protokol yang digunakan untuk permintaan. Properti ini dicadangkan untuk digunakan di masa mendatang.

PreAuthenticate

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan melakukan praautomatis permintaan. Properti ini dicadangkan untuk digunakan di masa mendatang.

Proxy

Mendapatkan atau mengatur proksi jaringan yang akan digunakan untuk permintaan ini. Properti ini dicadangkan untuk digunakan di masa mendatang.

RequestUri

Mendapatkan Pengidentifikasi Sumber Daya Seragam (URI) permintaan.

Timeout

Mendapatkan atau mengatur lamanya waktu hingga waktu permintaan habis.

UseDefaultCredentials

Selalu melempar .NotSupportedException

UseDefaultCredentials

Saat ditimpa di kelas turunan, mendapatkan atau menetapkan Boolean nilai yang mengontrol apakah DefaultCredentials dikirim dengan permintaan.

(Diperoleh dari WebRequest)

Metode

Abort()

Membatalkan permintaan ke sumber daya Internet.

Abort()

Membatalkan permintaan.

(Diperoleh dari WebRequest)
BeginGetRequestStream(AsyncCallback, Object)

Memulai permintaan asinkron untuk objek yang Stream digunakan untuk menulis data.

BeginGetResponse(AsyncCallback, Object)

Memulai permintaan asinkron untuk sumber daya sistem file.

CreateObjRef(Type)

Membuat objek yang berisi semua informasi relevan yang diperlukan untuk menghasilkan proksi yang digunakan untuk berkomunikasi dengan objek jarak jauh.

(Diperoleh dari MarshalByRefObject)
EndGetRequestStream(IAsyncResult)

Mengakhiri permintaan asinkron untuk Stream instans yang digunakan aplikasi untuk menulis data.

EndGetResponse(IAsyncResult)

Mengakhiri permintaan asinkron untuk sumber daya sistem file.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetLifetimeService()
Kedaluwarsa.

Mengambil objek layanan seumur hidup saat ini yang mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
Kedaluwarsa.

Mengisi dengan data yang SerializationInfo diperlukan untuk membuat serialisasi objek target.

GetObjectData(SerializationInfo, StreamingContext)
Kedaluwarsa.

Mengisi dengan data yang SerializationInfo diperlukan untuk membuat serialisasi objek target.

(Diperoleh dari WebRequest)
GetRequestStream()

Mengembalikan Stream objek untuk menulis data ke sumber daya sistem file.

GetRequestStreamAsync()

Mengembalikan aliran untuk menulis data ke sumber daya sistem file sebagai operasi asinkron.

GetRequestStreamAsync()

Saat ditimpa di kelas turunan, mengembalikan Stream untuk menulis data ke sumber daya Internet sebagai operasi asinkron.

(Diperoleh dari WebRequest)
GetResponse()

Mengembalikan respons terhadap permintaan sistem file.

GetResponseAsync()

Mengembalikan respons terhadap permintaan sistem file sebagai operasi asinkron.

GetResponseAsync()

Saat ditimpa di kelas turunan, mengembalikan respons terhadap permintaan Internet sebagai operasi asinkron.

(Diperoleh dari WebRequest)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
InitializeLifetimeService()
Kedaluwarsa.

Mendapatkan objek layanan seumur hidup untuk mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
MemberwiseClone(Boolean)

Membuat salinan dangkal objek saat ini MarshalByRefObject .

(Diperoleh dari MarshalByRefObject)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

ISerializable.GetObjectData(SerializationInfo, StreamingContext)
Kedaluwarsa.

Mengisi SerializationInfo objek dengan data yang diperlukan untuk menserialisasikan FileWebRequest.

Berlaku untuk

Lihat juga