HttpListenerResponse.StatusCode Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit le code d'état HTTP à retourner au client.
public:
property int StatusCode { int get(); void set(int value); };
public int StatusCode { get; set; }
member this.StatusCode : int with get, set
Public Property StatusCode As Integer
Valeur de propriété
Valeur Int32 qui spécifie le code d'état HTTP pour la ressource demandée. La valeur par défaut est OK, indiquant que le serveur a traité correctement la demande du client et a inclus la ressource demandée dans le corps de la réponse.
Exceptions
Cet objet est fermé.
La valeur spécifiée pour une opération set n'est pas valide. Les valeurs autorisées sont comprises entre 100 et 999 (inclus).
Exemples
L’exemple de code suivant montre comment définir la valeur de cette propriété.
// When the client is not authenticated, there is no Identity.
if (context.User == null)
{
message.Append ("<HTML><BODY><p> Hello local user! </p></BODY></HTML>");
}
else
{
// Get the requester's identity.
System.Security.Principal.WindowsIdentity identity = WindowsIdentity.GetCurrent();
// Construct the response body.
message.AppendFormat ("<HTML><BODY><p> Hello {0}!<br/>",
identity.Name);
message.AppendFormat ("You were authenticated using {0}.</p>",
identity.AuthenticationType);
message.Append ("</BODY></HTML>");
}
// Configure the response.
HttpListenerResponse response = context.Response;
// Use the encoding from the response if one has been set.
// Otherwise, use UTF8.
System.Text.Encoding encoding = response.ContentEncoding;
if (encoding == null)
{
encoding = System.Text.Encoding.UTF8;
response.ContentEncoding = encoding;
}
byte[] buffer = encoding.GetBytes (message.ToString ());
response.ContentLength64 = buffer.Length;
response.StatusCode = (int) HttpStatusCode.OK;
response.StatusDescription = "OK";
response.ProtocolVersion = new Version ("1.1");
// Don't keep the TCP connection alive;
// We don't expect multiple requests from the same client.
response.KeepAlive = false;
// Write the response body.
System.IO.Stream stream = response.OutputStream;
stream.Write(buffer, 0, buffer.Length);
' When the client is not authenticated, there is no Identity.
If context.User Is Nothing Then
message.Append("<HTML><BODY><p> Hello local user! </p></BODY></HTML>")
Else
' Get the requester's identity.
Dim identity As System.Security.Principal.WindowsIdentity = WindowsIdentity.GetCurrent()
' Construct the response body.
message.AppendFormat("<HTML><BODY><p> Hello {0}!<br/>", identity.Name)
message.AppendFormat("You were authenticated using {0}.</p>", identity.AuthenticationType)
message.Append("</BODY></HTML>")
End If
' Configure the response.
Dim response As HttpListenerResponse = context.Response
' Use the encoding from the response if one has been set.
' Otherwise, use UTF8.
Dim encoding As System.Text.Encoding = response.ContentEncoding
If encoding Is Nothing Then
encoding = System.Text.Encoding.UTF8
response.ContentEncoding = encoding
End If
Dim buffer() As Byte = encoding.GetBytes(message.ToString())
response.ContentLength64 = buffer.Length
response.StatusCode = CInt(HttpStatusCode.OK)
response.StatusDescription = "OK"
response.ProtocolVersion = New Version("1.1")
' Don't keep the TCP connection alive
' We don't expect multiple requests from the same client.
response.KeepAlive = False
' Write the response body.
Dim stream As System.IO.Stream = response.OutputStream
stream.Write(buffer, 0, buffer.Length)
Remarques
Les clients utilisent le code d’état retourné par le serveur pour décider de la procédure à suivre. La valeur de OK indique que le serveur a correctement traité la demande du client et inclus la ressource demandée dans le corps de la réponse. D’autres codes d’état courants incluent NotFound, indiquant que la ressource demandée n’a pas été trouvée sur le serveur, et NotModified, indiquant qu’il n’était pas nécessaire de retourner la ressource demandée dans le corps de la réponse, car la copie mise en cache du client de la ressource est à jour.
Pour obtenir la liste complète des codes d’état possibles, consultez l’énumération HttpStatusCode .