WebRequest.PreAuthenticate Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cuando se invalida en una clase descendiente, indica si se debe autenticar previamente la solicitud.
public:
virtual property bool PreAuthenticate { bool get(); void set(bool value); };
public virtual bool PreAuthenticate { get; set; }
member this.PreAuthenticate : bool with get, set
Public Overridable Property PreAuthenticate As Boolean
Valor de propiedad
true
autenticar previamente; de lo contrario, false
.
Excepciones
Cualquier intento se realiza para obtener o establecer la propiedad, cuando la propiedad no se invalida en una clase descendiente.
Ejemplos
En el ejemplo siguiente se establece la propiedad PreAuthenticate en true
para que el NetworkCredential almacenado en la propiedad Credentials se envíe junto con la solicitud de recurso.
// Create a new webrequest to the mentioned URL.
WebRequest^ myWebRequest = WebRequest::Create( url );
// Set 'Preauthenticate' property to true. Credentials will be sent with the request.
myWebRequest->PreAuthenticate = true;
Console::WriteLine( "\nPlease enter your credentials for the requested Url" );
Console::WriteLine( "UserName" );
String^ UserName = Console::ReadLine();
Console::WriteLine( "Password" );
String^ Password = Console::ReadLine();
// Create a New 'NetworkCredential' object.
NetworkCredential^ networkCredential = gcnew NetworkCredential( UserName,Password );
// Associate the 'NetworkCredential' object with the 'WebRequest' object.
myWebRequest->Credentials = networkCredential;
// Assign the response object of 'WebRequest' to a 'WebResponse' variable.
WebResponse^ myWebResponse = myWebRequest->GetResponse();
// Create a new webrequest to the mentioned URL.
WebRequest myWebRequest=WebRequest.Create(url);
// Set 'Preauthenticate' property to true. Credentials will be sent with the request.
myWebRequest.PreAuthenticate=true;
Console.WriteLine("\nPlease enter your credentials for the requested Url");
Console.WriteLine("UserName");
string UserName=Console.ReadLine();
Console.WriteLine("Password");
string Password=Console.ReadLine();
// Create a New 'NetworkCredential' object.
NetworkCredential networkCredential=new NetworkCredential(UserName,Password);
// Associate the 'NetworkCredential' object with the 'WebRequest' object.
myWebRequest.Credentials=networkCredential;
// Assign the response object of 'WebRequest' to a 'WebResponse' variable.
WebResponse myWebResponse=myWebRequest.GetResponse();
' Create a new webrequest to the mentioned URL.
Dim myWebRequest As WebRequest = WebRequest.Create(url)
' Set 'Preauthenticate' property to true.
myWebRequest.PreAuthenticate = True
Console.WriteLine(ControlChars.Cr + "Please enter your credentials for the requested Url")
Console.WriteLine("UserName")
Dim UserName As String = Console.ReadLine()
Console.WriteLine("Password")
Dim Password As String = Console.ReadLine()
' Create a New 'NetworkCredential' object.
Dim networkCredential As New NetworkCredential(UserName, Password)
' Associate the 'NetworkCredential' object with the 'WebRequest' object.
myWebRequest.Credentials = networkCredential
' Assign the response object of 'WebRequest' to a 'WebResponse' variable.
Dim myWebResponse As WebResponse = myWebRequest.GetResponse()
Comentarios
Cautela
WebRequest
, HttpWebRequest
, ServicePoint
y WebClient
están obsoletos y no debe usarlos para el nuevo desarrollo. Use HttpClient en su lugar.
Con la excepción de la primera solicitud, la propiedad PreAuthenticate indica si se debe enviar información de autenticación con solicitudes posteriores sin esperar a que el servidor pueda impugnar. Cuando PreAuthenticate es false
, el WebRequest espera un desafío de autenticación antes de enviar información de autenticación.
Nota
La clase WebRequest es una clase abstract
. El comportamiento real de las instancias de WebRequest en tiempo de ejecución viene determinado por la clase descendiente devuelta por el método WebRequest.Create. Para obtener más información sobre los valores predeterminados y las excepciones, consulte la documentación de las clases descendientes, como HttpWebRequest y FileWebRequest.