Bagikan melalui


WebErrorStatus Enum

Definisi

Menentukan kesalahan yang ditemui selama operasi yang melibatkan layanan web, seperti autentikasi, konfigurasi proksi, dan URI tujuan.

public enum class WebErrorStatus
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
enum class WebErrorStatus
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public enum WebErrorStatus
var value = Windows.Web.WebErrorStatus.unknown
Public Enum WebErrorStatus
Warisan
WebErrorStatus
Atribut

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)

Bidang

BadGateway 502

Server bertindak sebagai gateway atau proksi dan menerima respons yang tidak valid dari server upstream.

BadRequest 400

Permintaan tidak dapat dipenuhi karena sintaksis yang buruk.

CannotConnect 14

Tidak dapat tersambung ke tujuan.

CertificateCommonNameIsIncorrect 1

Nama umum sertifikat SSL tidak cocok dengan alamat web.

CertificateContainsErrors 3

Sertifikat SSL berisi kesalahan.

CertificateExpired 2

Sertifikat SSL telah kedaluwarsa.

CertificateIsInvalid 5

Sertifikat SSL tidak valid.

CertificateRevoked 4

Sertifikat SSL telah dicabut.

Conflict 409

Menunjukkan bahwa permintaan tidak dapat diproses karena konflik dalam permintaan.

ConnectionAborted 9

Koneksi dibatalkan.

ConnectionReset 10

Koneksi direset.

Disconnected 11

Koneksi berakhir.

ErrorHttpInvalidServerResponse 8

Server mengembalikan respons yang tidak valid atau tidak dikenal.

ExpectationFailed 417

Server tidak dapat memenuhi persyaratan bidang Mengharapkan header permintaan.

Forbidden 403

Server telah menolak permintaan.

Found 302

Sumber daya ditemukan tetapi tersedia di lokasi yang berbeda dari yang disertakan dalam permintaan.

GatewayTimeout 504

Server bertindak sebagai gateway atau proksi dan tidak menerima respons tepat waktu dari server upstream.

Gone 410

Menunjukkan bahwa sumber daya yang diminta tidak lagi tersedia dan tidak akan tersedia lagi.

HostNameNotResolved 15

Tidak dapat mengatasi nama host yang disediakan.

HttpsToHttpOnRedirection 13

Dialihkan dari lokasi aman ke lokasi yang tidak aman.

HttpToHttpsOnRedirection 12

Dialihkan dari lokasi ke lokasi yang aman.

HttpVersionNotSupported 505

Server tidak mendukung versi protokol HTTP yang digunakan dalam permintaan.

InsufficientRangeSupport 22

Permintaan tidak mendukung rentang.

InternalServerError 500

Pesan kesalahan umum, diberikan ketika tidak ada pesan yang lebih spesifik yang cocok.

LengthRequired 411

Permintaan tidak menentukan panjang kontennya, yang diperlukan oleh sumber daya yang diminta.

MethodNotAllowed 405

Permintaan dibuat dari sumber daya menggunakan metode permintaan yang tidak didukung oleh sumber daya tersebut.

MissingContentLengthSupport 23

Permintaan salah ukuran file.

MovedPermanently 301

Ini dan semua permintaan di masa mendatang harus diarahkan ke URI yang diberikan.

MultipleChoices 300

URL yang diminta mewakili pengelompokan tingkat tinggi di mana pilihan tingkat bawah perlu dibuat.

NotAcceptable 406

Sumber daya yang diminta hanya mampu menghasilkan konten yang tidak dapat diterima sesuai dengan header Terima yang dikirim dalam permintaan.

NotFound 404

Sumber daya yang diminta tidak dapat ditemukan tetapi mungkin tersedia lagi di masa mendatang.

NotImplemented 501

Server tidak mengenali metode permintaan, atau tidak memiliki kemampuan untuk memenuhi permintaan.

NotModified 304

Menunjukkan sumber daya belum dimodifikasi sejak terakhir diminta.

OperationCanceled 16

Operasi dibatalkan.

PaymentRequired 402

Dicadangkan.

PreconditionFailed 412

Server tidak memenuhi salah satu prasyarat yang dimasukkan pemohon pada permintaan.

ProxyAuthenticationRequired 407

Klien harus terlebih dahulu mengautentikasi dirinya sendiri dengan proksi.

RedirectFailed 17

Pengalihan permintaan gagal.

RequestedRangeNotSatisfiable 416

Klien telah meminta sebagian file, tetapi server tidak dapat menyediakan bagian tersebut.

RequestEntityTooLarge 413

Permintaan lebih besar dari server yang bersedia atau dapat diproses.

RequestTimeout 408

Server kehabisan waktu menunggu permintaan.

RequestUriTooLong 414

Panjang URI yang disediakan melebihi panjang maksimum yang dapat diproses server.

SeeOther 303

Respons terhadap permintaan dapat ditemukan di bawah URI lain menggunakan metode GET.

ServerUnreachable 6

Server tidak merespons.

ServiceUnavailable 503

Saat ini server tidak tersedia.

TemporaryRedirect 307

Sumber daya yang diminta berada sementara di bawah URI yang berbeda.

Timeout 7

Koneksi telah kehabisan waktu.

Unauthorized 401

Autentikasi gagal atau kredensial belum disediakan.

UnexpectedClientError 20

Terjadi kesalahan sisi klien yang tidak terduga.

UnexpectedRedirection 19

Permintaan dialihkan secara tak terduga.

UnexpectedServerError 21

Terjadi kesalahan sisi server yang tidak terduga.

UnexpectedStatusCode 18

Kode status tak terduga yang menunjukkan kegagalan diterima.

Unknown 0

Terjadi kesalahan yang tidak diketahui.

UnsupportedMediaType 415

Entitas permintaan memiliki jenis media yang tidak didukung server atau sumber daya.

UseProxy 305

Sumber daya yang diminta harus diakses melalui proksi yang diberikan oleh bidang Lokasi.

Keterangan

Nilai WebErrorStatus dikembalikan oleh Windows.Web.WebError.GetStatus, Windows.Networking.WebSocketError.GetStatus, dan Windows.Networking.BackgroundTransfer.GetStatus.

Contoh ini menunjukkan cara menggunakan WebErrorStatus untuk menampilkan pesan kesalahan yang berbeda tergantung pada jenis kesalahan. Dalam contoh ini, nilai WebErrorStatus dikembalikan oleh Windows.Networking.WebSocketError.GetStatus.

using Windows.Web;
using Windows.Networking.Sockets;

// Pointer back to the main page. Needed to call methods in MainPage such as NotifyUser()
MainPage rootPage = MainPage.Current;

WebErrorStatus status = WebSocketError.GetStatus(ex.GetBaseException().HResult);

if (status == WebErrorStatus.CannotConnect ||
    status == WebErrorStatus.NotFound || 
    status == WebErrorStatus.RequestTimeout)
{
    rootPage.NotifyUser("Cannot connect to the server", NotifyType.ErrorMessage);
}
else
{
    rootPage.NotifyUser("Error: " + status, NotifyType.ErrorMessage);
}
// Pointer back to the main page. Needed to call methods in MainPage such as NotifyUser().
m_rootPage = MainPage::Current();

Windows::Web::WebErrorStatus status{ Windows::Networking::Sockets::WebSocketError::GetStatus(exception.to_abi()) };

if (status == Windows::Web::WebErrorStatus::CannotConnect ||
    status == Windows::Web::WebErrorStatus::NotFound ||
    status == Windows::Web::WebErrorStatus::RequestTimeout)
{
    m_rootPage.NotifyUser(L"Cannot connect to the server", NotifyType::ErrorMessage);
}
else
{
    m_rootPage.NotifyUser(std::wstring(L"Error: ") + exception.message().c_str(), NotifyType::ErrorMessage);
}
using namespace Windows::Web;
using namespace Windows::Networking::Sockets;

// Pointer back to the main page. Needed to call methods in MainPage such as NotifyUser()
rootPage = MainPage::Current;

WebErrorStatus status = WebSocketError::GetStatus(exception->HResult);

if (status == WebErrorStatus::CannotConnect || 
    status == WebErrorStatus::NotFound || 
    status == WebErrorStatus::RequestTimeout)
{
    rootPage->NotifyUser("Cannot connect to the server", NotifyType::ErrorMessage);
}
else
{
    rootPage->NotifyUser("Error: " + status.ToString(), NotifyType::ErrorMessage);
}

Riwayat versi

Versi Windows Versi SDK Nilai ditambahkan
1709 16299 InsufficientRangeSupport
1709 16299 MissingContentLengthSupport

Berlaku untuk

Lihat juga