Skip to main content
#P1429

POST /api/v2/get_visa_country

Route Info

Method Endpoint Controller Middleware Purpose
POST /api/v2/get_visa_country UserController@getVisaCountry authWithJwt بازیابی فهرست کشورها با نام و ملیت برای کاربردهای ویزا

منطق عملکرد

  • کوئری مدل Country با شرط:
    • status=1
    • fa_name غیر تهی
  • انتخاب ستون‌های: id, iso, fa_name, en_name, fa_nationality, en_nationality.
  • بازگرداندن داده‌ها در کلید countries.
  • مدیریت خطا با Try/Catch و ارسال کد 400 در صورت Exception.

پارامترهای ورودی

بدون پارامتر ورودی لازم، صرفاً JWT معتبر.

POST /api/v2/get_visa_country
Authorization: Bearer <JWT>

نمونه خروجی موفق

{
  "status": true,
  "time": 1732035260,
  "data": {
    "countries": [
      {
        "id": 118,
        "iso": "IR",
        "fa_name": "ایران",
        "en_name": "Iran",
        "fa_nationality": "ایرانی",
        "en_nationality": "Iranian"
      }
    ]
  }
}
**نمونه خطا:**
{
  "status": false,
  "error": "Database connection failed"
}

امنیت

  • JWT معتبر لازم است.

Dependencies

  • Country Model

کارایی

کوئری ساده Select، زمان اجرا ~3 ms.

مدیریت خطا

  • Try/Catch برای جلوگیری از کرش.

پیشنهاد بهبود

  • کش‌کردن نتایج برای کاهش بار DB.

جمع‌بندی

روت امکان بازیابی سریع کشورها برای کاربردهای صدور ویزا را فراهم می‌کند.