HttpListenerResponse.ProtocolVersion 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 la version HTTP utilisée pour la réponse.
public:
property Version ^ ProtocolVersion { Version ^ get(); void set(Version ^ value); };
public Version ProtocolVersion { get; set; }
member this.ProtocolVersion : Version with get, set
Public Property ProtocolVersion As Version
Valeur de propriété
Objet Version qui indique la version HTTP utilisée lors de la réponse au client. Notez que cette propriété est maintenant obsolète.
Exceptions
La valeur spécifiée pour une opération set est null
.
La valeur spécifiée pour une opération set n'a pas sa propriété Major avec pour valeur 1 ou sa propriété Minor avec pour valeur 0 ou 1.
Cet objet est fermé.
Exemples
L’exemple de code suivant montre comment définir la valeur de cette propriété.
static string message403;
static HttpListenerResponse preMade403Response;
static void SendBadCertificateResponse(HttpListenerResponse response)
{
if (preMade403Response == null)
{
// Set up an authentication error response template.
response.StatusCode = (int)HttpStatusCode.Forbidden;
response.StatusDescription = "403 Forbidden";
response.ProtocolVersion = new Version("1.1");
response.SendChunked = false;
preMade403Response = response;
}
else
{
response.CopyFrom(preMade403Response);
}
// The response body cannot be saved in the template.
StringBuilder message = new StringBuilder();
message.Append("<HTML><BODY>");
message.Append("<p> Error message 403: Access is denied due to a missing or invalid client certificate.</p>");
message.Append("</BODY></HTML>");
message403 = message.ToString();
// Turn the error message into a byte array using the
// encoding from the response when present.
System.Text.Encoding encoding = response.ContentEncoding;
if (encoding == null)
{
encoding = System.Text.Encoding.UTF8;
response.ContentEncoding = encoding;
}
byte[] buffer = encoding.GetBytes(message403);
response.ContentLength64 = buffer.Length;
// Write the error message.
System.IO.Stream stream = response.OutputStream;
stream.Write(buffer, 0, buffer.Length);
// Send the response.
response.Close();
}
Private Shared message403 As String
Private Shared preMade403Response As HttpListenerResponse
Private Shared Sub SendBadCertificateResponse(ByVal response As HttpListenerResponse)
If preMade403Response Is Nothing Then
' Set up an authentication error response template.
response.StatusCode = Cint(HttpStatusCode.Forbidden)
response.StatusDescription = "403 Forbidden"
response.ProtocolVersion = New Version("1.1")
response.SendChunked = False
Else
response.CopyFrom(preMade403Response)
End If
' The response body cannot be saved in the template.
Dim message As New StringBuilder()
message.Append("<HTML><BODY>")
message.Append("<p> Error message 403: Access is denied due to a missing or invalid client certificate.</p>")
message.Append("</BODY></HTML>")
message403 = message.ToString()
' Turn the error message into a byte array using the
' encoding from the response when present.
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(message403)
response.ContentLength64 = buffer.Length
' Write the error message.
Dim stream As System.IO.Stream = response.OutputStream
stream.Write(buffer, 0, buffer.Length)
' Send the response.
response.Close()
End Sub
Remarques
Les fonctionnalités des différentes versions HTTP sont spécifiées dans les documents disponibles à l’adresse https://www.ietf.org.