HttpListenerResponse.ProtocolVersion Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die für die Antwort verwendete HTTP-Version ab oder legt diese fest.
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
Eigenschaftswert
Ein Version-Objekt, das die für die Antwort an den Client verwendete HTTP-Version angibt. Beachten Sie, dass diese Eigenschaft jetzt veraltet ist.
Ausnahmen
Der für einen SET-Vorgang festgelegte Wert ist null
.
Die Major-Eigenschaft des für einen set-Vorgang angegebenen Werts ist nicht auf 1 festgelegt, oder die Minor-Eigenschaft des Werts ist nicht auf 0 oder 1 festgelegt.
Dieses Objekt ist geschlossen.
Beispiele
Im folgenden Codebeispiel wird das Festlegen des Werts dieser Eigenschaft veranschaulicht.
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
Hinweise
Die Funktionen der verschiedenen HTTP-Versionen werden in den dokumenten angegeben, die unter https://www.ietf.orgverfügbar sind.