خانه/راهنماها/توسعه‌دهندگان
توسعه‌دهندگان

نتیجه‌ای نیست یا خطای API: چگونه تفاوت را بفهمیم؟

نتایج خالی، پاسخ جزئی و خطای API ROOTE را تشخیص دهید. مختصات، فیلترها، پوشش و محدودیت‌ها را بررسی کنید تا پیام مناسب نمایش داده شود.

By ROOTE·۷ دقیقه مطالعه
نتیجه‌ای نیست یا خطای API: چگونه تفاوت را بفهمیم؟
یک پاسخ خالی به معنای نقص نیست.

خلاصه در چند ثانیه

با بررسی لایه انتقال HTTP شروع کنید، سپس محتوای پاسخ و وضعیت کسب‌وکار را اعتبارسنجی نمایید. جستجوی خالی به معنای نقص نیست؛ نقص به معنای نبود خدمات نیست. پاسخ جزئی می‌تواند با هشدارهای مربوطه حفظ شود.

یک API بدون نتیجه و APIیی که خطا دارد نیازمند دو روند متفاوت است. جستجوی موفق ممکن است در محدوده جستجو هیچ مکانی بازنگرداند. در مقابل، خطای شبکه، رسیدن به محدودیت یا منبع ناموجود مانع نتیجه‌گیری از جستجو می‌شود.

برای ROOTE ابتدا پاسخ HTTP، سپس وضعیت کسب‌وکار، کالکشن مورد انتظار و پوشش را بررسی کنید. این کار از نمایش «هیچ توالت» هنگام شکست تماس با سرویس‌ها یا «هیچ ایستگاهی» پس از پایان زمان انتظار جلوگیری می‌کند.

خواندن سه لایه پاسخ

لایهموارد قابل بررسینتیجه قابل استنتاج
انتقالاتصال، زمان انتظار و وضعیت HTTPآیا درخواست موفق بوده؟
قراردادJSON معتبر، نسخه و فیلدهای مورد انتظارآیا پاسخ قابل استفاده است؟
نتیجه کسب‌وکاروضعیت، مجموعه‌ها، پوشش، هشدارها و متادر محدوده درخواست شده چه می‌دانیم؟

کد HTTP ۲۰۰ به تنهایی برای اعتبارسنجی جستجو کافی نیست. پاسخ ممکن است اجرای جزئی یا وضعیت خطا را نشان دهد. برعکس، ۴۰۴ در یک مسیر روش معمول برای نمایش کالکشن خالی نیست: URL و قرارداد را بررسی کنید.

درک وضعیت‌های success، empty، partial و error

وضعیتعمل توصیه شده
موفقیتپس از اعتبارسنجی موجودیت‌ها را نمایش دهید و محدودیت‌ها را حفظ کنید
خالیاعلام کنید که برای این جستجو هیچ نتیجه‌ای بازنگشته
جزئیاطلاعات قابل استفاده را همراه با هشدارهای مربوطه نمایش دهید
خطاجستجو را به عنوان ناموجود نمایش دهید؛ نتیجه‌گیری درباره نبود مکان‌ها نکنید

نبود نتیجه مربوط به یک درخواست و منابع شناخته شده است. این اثبات نمی‌کند هیچ خدمتی فیزیکی وجود ندارد. پوشش ناقص، فیلتر محدودکننده یا اعمال محدودیت می‌تواند نتایج را کاهش دهد.

درخت تصمیم‌گیری برای رابط شما

1. La requête a-t-elle abouti ?
   Non → indisponibilité réseau ou délai dépassé.
2. Le statut HTTP est-il acceptable selon le contrat ?
   Non → traiter le code et le message d'erreur.
3. Le JSON respecte-t-il le schéma attendu ?
   Non → réponse inexploitable, jamais "aucun résultat".
4. Le statut métier est-il error ?
   Oui → recherche indisponible.
5. Le statut est-il partial ou la couverture limitée ?
   Oui → résultats utilisables + avertissement.
6. La collection attendue est-elle vide ?
   Oui → aucun résultat retourné dans ce périmètre.
   Non → afficher les résultats et leurs limites.

بررسی پارامترها به ترتیب درست

ابتدا عرض و طول جغرافیایی، ترتیب آنها و شهری که دریافت شده را بررسی کنید. سپس واحد شعاع و واژگان فیلترها را کنترل کنید. API سرویس‌ها از types=toilets استفاده می‌کند؛ URL نقشه از modes=toilets. این پارامترها به قراردادهای متفاوتی تعلق دارند.

سپس تنها یک بعد را در هر بار گسترش دهید: شعاع را در محدوده مسیر افزایش دهید یا یک فیلتر را برای آزمون صریح حذف کنید. درخواست اولیه را یادداشت کنید. اگر به طور خودکار گسترش می‌دهید، محدوده جدید را به کاربر اطلاع دهید.

ساخت جستجوی API حول مختصات GPS

برخورد با منبع ناموجود بدون از دست دادن دیگر منابع

پاسخ جزئی ممکن است شامل مکان‌هایی از منابع پاسخ‌دهنده باشد در حالی که منبع دیگر شکست خورده. این نتایج، نسبت‌ها و هشدارهای مربوطه را حفظ کنید. فهرست را به عنوان کامل نمایش ندهید و فیلدهای مفقود را با مقادیر پیش‌فرض گمراه‌کننده جایگزین نکنید.

اطلاعات قدیمی ذخیره‌شده در کش نیز می‌تواند مفید باشد اگر سیاست شما اجازه این برگشت را بدهد. باید به عنوان قدیمی مشخص بماند. زمان دریافت درخواست شما باعث تازه شدن مشاهده اصلی نمی‌شود.

سازگار کردن پیام‌ها و واکنش‌ها

وضعیتپیامی که باید در رابط شما تنظیم شوداقدام
خالیهیچ نتیجه‌ای با این فیلترها در این منطقه برگشت نشدهمنطقه یا فیلترها را تغییر دهید
جزئیبرخی نتایج در دسترس‌اند؛ جستجو ناقص استنتایج و هشدار را نمایش دهید
خطای اعتبارسنجیجستجو حاوی پارامتری نامعتبر استدرخواست را اصلاح کنید
احراز هویت یا مجوزهااین دسترسی اجازه این جستجو را نمی‌دهدحساب یا توکن را بررسی کنید
محدودیت یا عدم دسترسیجستجو موقتا در دسترس نیسترعایت دستورالعمل‌های واکنش

برای ۴۲۹، دستورالعمل‌های سرویس و Retry-After را بررسی کنید. خطای ۴۰۰ نیاز به اصلاح آرگومان‌ها دارد؛ تکرار همان درخواست مشکل را حل نمی‌کند. تبدیل ۴۰۱ به تماس ناشناس خودکار اگر کاربر توکن داده نکنید.

مرجع خطاهای API ROOTE

وضعیت سرویس‌های ROOTE

چهار وضعیت را قبل از انتشار بررسی کنید

پاسخ‌های آزمایشی کامل، خالی، جزئی و خطا و همچنین JSON نامعتبر و زمان گذشته را آماده کنید. پیام نمایش، نتایج حفظ‌شده و تعداد واکنش‌ها را بررسی کنید. آزمایش اساسی این است که نقص هرگز منجر به تأیید نبود سرویس‌ها نشود.

اعمال این قوانین در یک دستیار هوش مصنوعی

درک فرمت‌های داده‌های حمل‌ونقل

برای توسعه‌دهندگانAPI حمل و نقل ROOTE

حمل و نقل اطراف یک نقطه.
مستقیماً در برنامه شما.

  • جستجو
    در اطراف یک موقعیت
  • دسترسی به
    داده‌های حمل و نقل
  • ادغام در
    برنامه شما

از نقشه به داده‌ها بروید: حمل و نقل و خدمات نزدیک را با API ROOTE جستجو کنید.

پرسش‌های متداول

آیا لیست خالی نبود توالت را ثابت می‌کند؟

خیر، فقط نشان می‌دهد برای این جستجو و منابع بررسی‌شده نتیجه‌ای بازنگشته.

آیا می‌توان پاسخ جزئی نمایش داد؟

بله، اگر موجودیت‌های استفاده‌شده معتبر باشند و هشدارها و محدودیت‌ها حفظ شود.

آیا باید هر خطا را دوباره اجرا کرد؟

خیر. خطاهای پارامتر یا دسترسی را اصلاح کنید؛ واکنش‌ها را برای حوادث گذرا محدود کنید و دستورالعمل‌های سرویس را رعایت نمایید.

چطور است ابتدا اطراف خود را ببینید؟

محله خود را با ROOTE کاوش کنید و اطلاعات موجود برای برنامه‌ریزی سفر خود را پیدا کنید.

کاوش نقشه ROOTE ↗