FileWebRequest.GetResponse Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí odpověď na požadavek systému souborů.
public:
override System::Net::WebResponse ^ GetResponse();
public override System.Net.WebResponse GetResponse ();
override this.GetResponse : unit -> System.Net.WebResponse
Public Overrides Function GetResponse () As WebResponse
Návraty
A WebResponse obsahující odpověď z prostředku systému souborů.
Výjimky
Časový limit požadavku vypršel.
Příklady
Následující příklad kódu používá metodu GetResponse k vrácení odpovědi na požadavek systému souborů.
//
// This program shows how to use the FileWebRequest::GetResponse method
// to read and display the content of a file 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 read access.
#using <System.dll>
using namespace System;
using namespace System::Net;
using namespace System::IO;
ref class TestGetResponse
{
private:
static FileWebResponse^ myFileWebResponse;
static void showUsage()
{
Console::WriteLine( "\nPlease enter file name:" );
Console::WriteLine( "Usage: cs_getresponse <systemname>/<sharedfoldername>/<filename>" );
Console::WriteLine( "Example: cs_getresponse ndpue/temp/hello.txt" );
}
static bool makeFileRequest( String^ fileName )
{
bool requestOk = false;
try
{
Uri^ myUrl = gcnew Uri( String::Format( "file://{0}", fileName ) );
// Create a Filewebrequest object using the passed Uri.
FileWebRequest^ myFileWebRequest = dynamic_cast<FileWebRequest^>(WebRequest::Create( myUrl ));
// Get the FileWebResponse object.
myFileWebResponse = dynamic_cast<FileWebResponse^>(myFileWebRequest->GetResponse());
requestOk = true;
}
catch ( WebException^ e )
{
Console::WriteLine( "WebException: {0}", e->Message );
}
catch ( UriFormatException^ e )
{
Console::WriteLine( "UriFormatWebException: {0}", e->Message );
}
return requestOk;
}
static void readFile()
{
try
{
// Create the file stream.
Stream^ receiveStream = myFileWebResponse->GetResponseStream();
// Create a reader object to read the file content.
StreamReader^ readStream = gcnew StreamReader( receiveStream );
// Create a local buffer for a temporary storage of the
// read data.
array<Char>^readBuffer = gcnew array<Char>(256);
// Read the first up to 256 bytes.
int count = readStream->Read( readBuffer, 0, 256 );
Console::WriteLine( "The file content is:" );
Console::WriteLine( "" );
// Loop to read the remaining bytes in 256 blocks
// and display the data on the console.
while ( count > 0 )
{
String^ str = gcnew String( readBuffer,0,count );
Console::WriteLine( "{0}\n", str );
count = readStream->Read( readBuffer, 0, 256 );
}
readStream->Close();
// Release the response object resources.
myFileWebResponse->Close();
}
catch ( WebException^ e )
{
Console::WriteLine( "The WebException: {0}", e->Message );
}
catch ( UriFormatException^ e )
{
Console::WriteLine( "The UriFormatException: {0}", e->Message );
}
}
public:
static void Main()
{
array<String^>^args = Environment::GetCommandLineArgs();
if ( args->Length < 2 )
showUsage();
else
{
if ( makeFileRequest( args[ 1 ] ) )
readFile();
}
}
};
int main()
{
TestGetResponse::Main();
}
//
// This example shows how to use the FileWebRequest.GetResponse method
// to read and display the contents of a file 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 read access.
using System;
using System.Net;
using System.IO;
namespace Mssc.PluggableProtocols.File
{
class TestGetResponse
{
private static FileWebResponse myFileWebResponse;
private static void showUsage()
{
Console.WriteLine("\nPlease enter file name:");
Console.WriteLine("Usage: cs_getresponse <systemname>/<sharedfoldername>/<filename>");
}
private static bool makeFileRequest(string fileName)
{
bool requestOk = false;
try
{
Uri myUrl = new Uri("file://" + fileName);
// Create a FileWebRequest object using the passed URI.
FileWebRequest myFileWebRequest = (FileWebRequest)WebRequest.Create(myUrl);
// Get the FileWebResponse object.
myFileWebResponse =(FileWebResponse)myFileWebRequest.GetResponse();
requestOk = true;
}
catch(WebException e)
{
Console.WriteLine("WebException: "+e.Message);
}
catch(UriFormatException e)
{
Console.WriteLine("UriFormatWebException: "+e.Message);
}
return requestOk;
}
private static void readFile()
{
try
{
// Create the file stream.
Stream receiveStream=myFileWebResponse.GetResponseStream();
// Create a reader object to read the file content.
StreamReader readStream = new StreamReader( receiveStream );
// Create a local buffer for a temporary storage of the
// read data.
char[] readBuffer = new Char[256];
// Read the first 256 bytes.
int count = readStream.Read( readBuffer, 0, 256 );
Console.WriteLine("The file content is:");
Console.WriteLine("");
// Loop to read the remaining data in blocks of 256 bytes
// and display the data on the console.
while (count > 0)
{
String str = new String(readBuffer, 0, count);
Console.WriteLine(str+"\n");
count = readStream.Read(readBuffer, 0, 256);
}
readStream.Close();
// Release the response object resources.
myFileWebResponse.Close();
}
catch(WebException e)
{
Console.WriteLine("The WebException: "+e.Message);
}
catch(UriFormatException e)
{
Console.WriteLine("The UriFormatException: "+e.Message);
}
}
static void Main(string[] args)
{
if (args.Length < 1)
{
showUsage();
}
else
{
if (makeFileRequest(args[0]))
readFile();
}
}
}
}
'
' This example shows how to use the FileWebRequest.GetResponse method
' to read and display the contents of a file 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 read access.
Imports System.Net
Imports System.IO
Namespace Mssc.PluggableProtocols.File
Module M_TestGetResponse
Class TestGetResponse
Private Shared myFileWebResponse As FileWebResponse
Private Shared Sub showUsage()
Console.WriteLine(ControlChars.Lf + "Please enter file name:")
Console.WriteLine("Usage: cs_getresponse <systemname>/<sharedfoldername>/<filename>")
End Sub
Private Shared Function makeFileRequest(ByVal fileName As String) As Boolean
Dim requestOk As Boolean = False
Try
Dim myUrl As New Uri("file://" + fileName)
' Create a FileWebRequest object using the passed URI.
Dim myFileWebRequest As FileWebRequest = CType(WebRequest.Create(myUrl), FileWebRequest)
' Get the FileWebResponse object.
myFileWebResponse = CType(myFileWebRequest.GetResponse(), FileWebResponse)
requestOk = True
Catch e As WebException
Console.WriteLine(("WebException: " + e.Message))
Catch e As UriFormatException
Console.WriteLine(("UriFormatWebException: " + e.Message))
End Try
Return requestOk
End Function 'makeFileRequest
Private Shared Sub readFile()
Try
' Create the file stream.
Dim receiveStream As Stream = myFileWebResponse.GetResponseStream()
' Create a reader object to read the file content.
Dim readStream As New StreamReader(receiveStream)
' Create a local buffer for a temporary storage of the
' read data.
Dim readBuffer() As Char = New [Char](255) {}
' Read the first 256 bytes.
Dim count As Integer = readStream.Read(readBuffer, 0, 256)
Console.WriteLine("The file content is:")
Console.WriteLine("")
'Loop to read the remaining data in blocks of 256 bytes
'and display the data on the console.
While count > 0
Dim str As New [String](readBuffer, 0, count)
Console.WriteLine((str + ControlChars.Lf))
count = readStream.Read(readBuffer, 0, 256)
End While
readStream.Close()
' Release the response object resources.
myFileWebResponse.Close()
Catch e As WebException
Console.WriteLine(("The WebException: " + e.Message))
Catch e As UriFormatException
Console.WriteLine(("The UriFormatException: " + e.Message))
End Try
End Sub
'Entry point which delegates to C-style main Private Function
Public Shared Sub Main(ByVal args() As String)
If args.Length < 1 Then
showUsage()
Else
If makeFileRequest(args(0)) = True Then
readFile()
End If
End If
End Sub
End Class
End Module
End Namespace
Poznámky
Metoda GetResponse vrátí WebResponse objekt, který obsahuje odpověď z prostředku systému souborů.
Metoda GetResponse poskytuje synchronní přístup k .WebResponse Pro asynchronní přístup použijte BeginGetResponse metody a EndGetResponse .