Bagikan melalui


Meminta kode kesalahan API Layanan

ID Terverifikasi Microsoft Entra menyertakan REST API Layanan Permintaan yang memungkinkan Anda mengeluarkan dan memverifikasi kredensial. Artikel ini menentukan kode kesalahan untuk API Layanan Permintaan.

Objek kesalahan

Selama pratinjau publik, API Layanan Permintaan mengembalikan kesalahan dalam format berikut.

{
  "requestId": "4bb6726f77af7623ab52962323016442",
  "date": "Thu, 28 Apr 2022 14:30:54 GMT",
  "mscv": "17ppwf3uxR10MfRR.1",
  "error": {
    "code": "client_request.invalid_include_qr_code",
    "message": "The request contains `includeQRCode`, but it is not boolean."
  }
}

Format ini sekarang diubah menjadi seperti berikut untuk memungkinkan penanganan kesalahan yang lebih sederhana dan dukungan yang lebih baik untuk pemecahan masalah. Dalam format baru, kode kesalahan luar dan bidang pesan memiliki nilai standar, sementara objek innererror memberikan detail tentang apa yang menyebabkan kesalahan.

{
  "requestId": "782628eb-503a-4978-84f2-d7c634f25b15",
  "date": "Fri, 29 Apr 2022 11:20:19 GMT",
  "mscv": "QbBLwF7XAp0dt4Lw.1",
  "error": {
    "code": "badRequest",
    "message": "The request is invalid.",
    "innererror": {
      "code": "badOrMissingField",
      "message": "The request contains `includeQRCode`, but it is not boolean.",
      "target": "includeQRCode"
    }
  }
}
Properti Tipe Deskripsi
requestId string ID permintaan yang dibuat secara otomatis.
date date Waktu kesalahan.
mscv string Kode Microsoft internal.
error Kesalahan Objek kesalahan luar

Jenis kesalahan

Objek error sekarang cocok dengan Kode Status HTTP yang dikembalikan dari Panggilan API untuk memungkinkan penanganan kesalahan yang lebih mudah bagi pengembang.

Properti Tipe Deskripsi
code string Kode kesalahan yang dikembalikan cocok dengan Kode Status HTTP.
message string Pesan kesalahan standar yang juga bergantung pada kode status HTTP yang dikembalikan.
innererror Innererror Memberikan detail tentang apa yang menyebabkan kesalahan.

Kode dan pesan kesalahan

Berikut ini adalah kemungkinan nilai code tingkat atas yang dipetakan ke kode status HTTP berbeda yang dikembalikan.

Kode Status HTTP code pesan
400 badRequest Permintaan tidak valid.
401 tidak sah Sumber daya yang diminta memerlukan autentikasi
403 terlarang Tidak ada izin untuk memenuhi permintaan ini.
404 notFound Sumber daya yang diminta tidak ada.
405 methodNotAllowed Metode yang diminta tidak diizinkan pada sumber daya yang diminta.
406 notAcceptable Format respons yang diminta tidak didukung.
408 requestTimeout Waktu permintaan habis.
409 konflik Server tidak dapat memenuhi permintaan karena konflik server.
410 hilang Sumber daya yang diminta tidak lagi tersedia.
411 contentLengthRequired Header Panjang Konten tidak ada.
412 preconditionFailed Prasyarat untuk permintaan ini gagal.
413 payloadTooLarge Payload terlalu besar.
414 uriTooLong URI terlalu panjang.
415 unsupportedMediaType Jenis media yang ditentukan tidak didukung.
416 rangeNotSatisfiable Rentang data yang diminta tidak dapat dipenuhi.
417 expectationFailed Header Expect tidak dapat dipenuhi.
421 misdirectedRequest Tidak dapat menghasilkan respons untuk permintaan ini.
422 unprocessableEntity Permintaan berisi kesalahan semantik.
423 terkunci Sumber daya sumber atau tujuan terkunci.
429 tooManyRequests Terlalu banyak permintaan. Coba lagi nanti.
431 requestHeaderFieldsTooLarge Bidang header permintaan terlalu besar.
500 internalServerError Terjadi kesalahan umum pada server.
501 notImplemented Server tidak mendukung fungsi yang diminta.
502 badGateway respons buruk diterima dari gateway lain.
503 serviceUnavailable Server untuk sementara tidak tersedia. Silakan coba lagi nanti.
504 gatewayTimeout Waktu habis diterima dari gateway lain.
507 insufficientStorage Tidak dapat menyimpan data untuk permintaan tersebut.

Kode Kesalahan Dalam

Objek kesalahan dalam berisi detail spesifik kesalahan yang berguna bagi pengembang untuk membantu menyelidiki kegagalan saat ini.

{
  "requestId": "782628eb-503a-4978-84f2-d7c634f25b15",
  "date": "Fri, 29 Apr 2022 11:20:19 GMT",
  "mscv": "QbBLwF7XAp0dt4Lw.1",
  "error": {
    "code": "badRequest",
    "message": "The request is invalid.",
    "innererror": {
      "code": "badOrMissingField",
      "message": "The request contains `includeQRCode`, but it is not boolean.",
      "target": "includeQRCode"
    }
  }
}
Properti Tipe Deskripsi
code string Kode kesalahan internal. Berisi kode standar, berdasarkan jenis kesalahan
message string Pesan kesalahan internal. Berisi pesan terperinci tentang kesalahan tersebut. Dalam contoh ini, bidang includeQRCode adalah jenis yang salah.
target string Opsional. Target berisi bidang dalam permintaan yang menyebabkan kesalahan ini. Bidang ini bersifat opsional dan mungkin tidak ada, tergantung pada jenis kesalahan.

Kode Kesalahan Dalam

Kode Deskripsi
badOrMissingField dikembalikan ketika terjadi masalah validasi pada permintaan. Bidang target berisi bidang dalam permintaan yang menyebabkan masalah.
notFound dikembalikan ketika sumber daya yang diminta klien tidak ditemukan. Bidang target berisi nama/id sumber daya yang tidak ditemukan.
tokenError dikembalikan untuk masalah validasi pada token seperti JWT dan sejenisnya. Bidang target berisi nama token yang menyebabkan masalah, jika berlaku.
transientError dikembalikan untuk semua kasus di mana klien mungkin bisa mendapatkan respons yang berhasil jika mereka mencoba kembali permintaan di tahap selanjutnya. Contoh umum ketika kode ini dikembalikan adalah ketika kode HTTP 429 dikembalikan

Langkah berikutnya