طراحی سایت, ساخت ربات تلگرام, آموزش php , سورس کد php ,سورس ربات تلگرام , سورس فروشگاه اینترنتی , آموزش طراحی وب

پیاده سازی جستجو REST API در PHP


پیاده سازی جستجو REST API در PHP

در این آموزش از سری مقالات ساخت وب سرویس RESTful در php ,  قصد داریم به شما نحوه پیاده سازی جستجو REST API در PHP را نشان بدیم . من یک وب سرویس RESTful در php برای انجام عملیات جستجو (Search) در دیتابیس بر اساس کلمه ای که در querystring پاس داده شده ساختم که در ادامه نحوه کار آن و کد php استفاده شده را خواهیم دید . همچنین  در آموزش قبلی نحوه ساخت وب سرویس RESTful در php را به شما نشان دادیم .

در این مثال از پیاده سازی جستجو REST API در PHP , از دیتابیسی که شامل یک جدول از نام موبایل ها است استفاده میکنیم. همچنین از کلاس RESTHandler برای فراخوانی DAO برا انجام عملیات جستجو در دیتابیس , بهره می بریم . بعد از دریافت نتایج (fetch) , API رست فول ما پاسخ را در فرمت داده json برگشت می دهد..

پیاده سازی جستجو REST API در PHP

پیاده سازی جستجو REST API در دیتابیسMySQL

این کد به شما یک کلاس مدیریت سرویس REST را نشان میدهد . این فراخوانی DAO به شما نحوه اجرای یک کویری جستجو بر اساس کلمه کلیدی پاس داده شده توسط متد GET را نشان میدهد . DAO یک آرایه ای از نتایح را به هندلر REST برگشت (return) می دهد. هندلر REST آرایه پاسخ را بر اساس آرایه نام موبایل ها که بر اساس کلمه جستجو شده, یافت شده اند را می سازد .

آرایه پاسخ (Response) بر اساس Content-Type درخواستی , اینکد میکند . در این مثال از  پیاده سازی جستجو REST API در PHP از فرمت داده jSON استفاده میکنیم.

کد php زیر به شما هندلر REST و فایل DAO موبایل را برای انجام جستجو در دیتابیس نشان می دهد. تابع searchMobile() برای ساخت کویری جستجو در دیتابیس استفاده شده است . بعد از اجرای کویری SQL , این تابع سطر های یافت شده از دیتابیس را به هندلر REST برای ساخت پاسخ در فرمت داده ای json توسط تابع json_encode() برگشت می دهد .

حتما بخوانید  Stream wrapper در php

خروجی جستجو REST API در PHP

پیاده سازی جستجو REST API در PHP

کد وضعیت ۴۰۴,۲۰۴,۲۰۰

در زمان کار با REST API , باید کد های وضعیت مهم در پاسخ (response) ارایه بدید . اگر API ما بصورت عمومی قابل دسترس باشد , ما مطمین نیستم که دقیقا چه نوع اپلیکیشن هایی قرار است از API ما استفاده کنند . ممکن است که یک اپلیکیشن اندروید یا حتی وب سرویس های دیگر از آن بهره ببرند . کدهای پاسخ ما باید قانع کننده و مناسب بر اساس وضعیت درخواست و عملیاتی که انجام می شود , باشد .

حتما بخوانید  احراز هویت توکن در php با JWT

در مثال پیاده سازی جستجو REST API , این سوال مطرح است که هنگامی که هیچ نوع داده ای برای کویری اجرا شده یافت نشد , چه نوع کد وضعیتی باید برگشت داده شود .

من از REST در فرمت URL بصورت زیر استفاده می کنم.

این URL دقیقا مطابق استاندارد و اصول وب سرویس REST است .

زمانی که url توسط سرور اجرا می شود , جستجویی بر اساس مقدار پاس داده شده در دیتابیس انجام و در نهایت نتیجه ای یافت نمی شود.. در این وضعیت باید یک پاسخ با وضعیت HTTP 404  ارسال کنیم ؟ در این حالت ترجیح میدهم که یک کد وضعیت ۲۰۰ (صحیح) و پاسخ خالی (null) را برگشت بدم . منبع REST پیدا شد ولی هیچ داده ای مطابق درخواست من برگشت داده نشد و این منطق درست تر است .

زمانی منطقی است که کد وضعیت ۴۰۴ NotFound را ارسال کنیم که مثلا سرور در دسترس نیست , دیتابیس قادر به اجرای کویری SQL نیست و یا زمانی که URL اشتباه است . خب امیدوارم متوجه شده باشید که زمانی که URL صحیح است و سرور نیز پاسخگو است , ما پاسخ موفقیت آمیز را برگشت می دهیم ولی بر اساس شرایط کویری هیچ نوع داده ای برای ارسال ندارید , بهتر است که یک پاسخ خالی را برگشت دهید .

امیدوارم از آموزش پیاده سازی جستجو REST API در PHP لذت برده باشید . برای دانلود سورس کد کامل به بخش دانلود باکس این مطلب مراجعه کنید.

هر سوالی داشتید ، از قسمت نظرات اقدام کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق و پیروز باشید.

اگر مفید بود, لطفا به اشترک بگذارید تا دوستان دیگر نیز بهره ببرند

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

دیدگاه کاربران

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دانلود رایگان (هدیه ویژه)

کتاب آموزش زبان برنامه نویسی PHP را دانلود و همین امروز یادگیری را شروع کن و به جمع برنامه نویسان ملحق شو ;)

دانلود رایگان کتاب

آموزش طراحی وب سایت

نظر کاربران عزیز

آموزش های آنلاین در چه زمینه ای تهیه کنیم ؟

  • آموزش جاوااسکریپت و جی کوئری (45%, 10)
  • آموزش ساخت ربات تلگرام (45%, 10)
  • آموزش بوت استرپ 4 (9%, 2)

تعداد رای ها : 22

Loading ... Loading ...

بخش کاربران

هنوز عضو نیستید ؟ کلیک کنید

مجوزهای ما


logo-samandehi نماد اعتماد الکترونیک

دانلود کتاب

عضویت در خبرنامه