#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=1fa_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.
جمعبندی
روت امکان بازیابی سریع کشورها برای کاربردهای صدور ویزا را فراهم میکند.