Bagikan melalui


HttpListenerResponse.StatusCode Properti

Definisi

Mendapatkan atau mengatur kode status HTTP yang akan dikembalikan ke klien.

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

Nilai Properti

Nilai Int32 yang menentukan kode status HTTP untuk sumber daya yang diminta. Defaultnya adalah OK, menunjukkan bahwa server berhasil memproses permintaan klien dan menyertakan sumber daya yang diminta dalam isi respons.

Pengecualian

Objek ini ditutup.

Nilai yang ditentukan untuk operasi set tidak valid. Nilai yang valid adalah antara 100 dan 999 inklusif.

Contoh

Contoh kode berikut menunjukkan pengaturan nilai properti ini.


// 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)

Keterangan

Klien menggunakan kode status yang dikembalikan oleh server untuk memutuskan cara melanjutkan. Nilai OK menunjukkan bahwa server berhasil memproses permintaan klien dan menyertakan sumber daya yang diminta dalam isi respons. Kode status umum lainnya termasuk NotFound, menunjukkan bahwa sumber daya yang diminta tidak ditemukan di server, dan NotModified, menunjukkan bahwa tidak perlu mengembalikan sumber daya yang diminta dalam isi respons karena salinan sumber daya yang di-cache klien sudah diperbarui.

Untuk daftar lengkap kemungkinan kode status, lihat HttpStatusCode enumerasi.

Berlaku untuk

Lihat juga