Алдааны кодууд
Алдааны хариуны бүтэц, код бүрийн утга, хүсэлтийн хязгаар болон засах арга.
Алдаа гарвал API нь HTTP статус болон дараах бүтэцтэй JSON буцаана:
{
"error": {
"code": "invalid_phone",
"message": "phone must be an 8-digit Mongolian number"
}
}code нь тогтвортой тул програмаар шалгахад ашиглана. message нь хүнд зориулсан тайлбар бөгөөд өөрчлөгдөж болох тул түүнд логикоо бүү тулгуурлана уу.
Кодууд
| HTTP | code | Утга | Яах вэ |
|---|---|---|---|
| 401 | unauthorized | API түлхүүр байхгүй, буруу, хүчингүй болсон эсвэл зөвшөөрөөгүй IP хаягаас ирсэн | Authorization: Bearer sk_... толгойг шалгана. API түлхүүрээ сольсон бол шинийг ашиглана. IP хязгаар тавьсан бол серверийн IP хаягийг жагсаалтад нэмнэ. |
| 400 | invalid_request | Хүсэлтийн бүтэц буруу, талбар дутуу эсвэл буруу төрөлтэй. Виджетийн state 1-128 тэмдэгт A-Z a-z 0-9 . _ ~ - биш үед ч ирнэ | message-ийг уншиж хүсэлтээ засна. |
| 400 | invalid_phone | Утасны дугаар (виджетийн phone тохиргоо ч мөн) 8 оронтой Монгол дугаар биш | 99112233, +97699112233 хэлбэрээр илгээнэ. |
| 409 | prefix_taken | Бодит rule-ийн угтвар өөр харилцагчийн угтвартай давхцаж байна. 150073 дугаарын угтварууд бүх харилцагчид нийтлэг тул нэг нь нөгөөгийнхөө эхлэл байж болохгүй (HIHI байвал HI, HIHI2 аль аль нь боломжгүй) | Өөр угтвар сонгоно. |
| 409 | rule_limit | Нэг харилцагчийн бодит rule-ийн тоо дээд хязгаарт (5) хүрсэн | Хэрэггүй rule-ээ устгана. Илүү хэрэгтэй бол hello@2fa.mn руу бичиж хязгаарыг өсгүүлнэ. |
| 404 | not_found | Session, rule эсвэл бусад нөөц олдсонгүй | ID зөв эсэх, мөн өөр горимын (тест эсвэл бодит) API түлхүүр ашиглаагүй эсэхийг шалгана. |
| 429 | rate_limited | Хүсэлтийн хязгаар хэтэрсэн | Түр хүлээгээд дахин оролдоно. Нэг дугаарт хэт олон session үүсгэхгүй. |
| 403 | client_suspended | Харилцагчийн эрх түр хаагдсан | Дэмжлэгийн багтай холбогдоно. |
| 400 | invalid_token | Виджетийн token буруу эсвэл танигдсангүй (POST /v1/verifications, эсвэл GET /v1/verifications/{token}) | Хөтчөөс ирсэн token-ийг өөрчлөхгүй дамжуулна. |
| 409 | token_used | Виджетийн token өмнө нь ашиглагдсан | Token нэг удаагийнх. Дахин баталгаажуулахын тулд виджетийг шинээр эхлүүлнэ. |
| 410 | token_expired | Виджетийн token-ий хугацаа дууссан | Баталгаажсаны дараа token-ийг хурдан солино. Шинээр баталгаажуулна. |
| 403 | origin_not_allowed | Виджетийг нийтийн API түлхүүрт нэмээгүй сайтаас ачаалсан | Хянах самбар > Виджет хэсэгт сайтынхаа хаягийг (origin) нэмнэ. |
| 403 | widget_disabled | Виджет унтраалттай байна | Хянах самбар > Виджет хэсэгт асаана. Асаалттай байсан бол дэмжлэгтэй холбогдоно. |
| 500 | internal_error | Манай талд түр алдаа гарсан | Түр хүлээгээд дахин оролдоно. Давтагдвал hello@2fa.mn руу хүсэлтийн цагийг илгээнэ. |
| 403 | test_only | Зөвхөн тест API түлхүүрээр дуудах хүсэлтийг бодит API түлхүүрээр дуудсан | POST /v1/test/mo-г sk_test_ API түлхүүрээр дуудна. |
Алдаа биш тохиолдол
Баталгаажсан session-ий кодыг дахин илгээвэл already_verified гэж тооцогдоно. Энэ нь алдаа биш: шинэ webhook ирэхгүй, мөн тухайн дугаарын буруу SMS-ийн хязгаарт тооцогдохгүй.
Хүсэлтийн хязгаар
429 rate_limited-ийн нөхцөлийг Хязгаар хуудаснаас үзнэ үү.
Зөвлөмж
5xxалдаа ирвэл түр хүлээгээд дахин оролдоно уу.4xxалдааг (429-өөс бусад) дахин оролдох нь утгагүй тул хүсэлтээ засна уу.- Хэрэглэгчид техникийн мессеж бүү харуулна уу. Жишээ нь
invalid_phoneирвэл «Дугаараа шалгаад дахин оруулна уу» гэж харуулна.
Дараагийн алхам
Энэ хуудас тус болсон уу?