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 |