هندل کردن frontend هنگام استفاده از restapi?

سلام فرض کنید یک سیستم کامل با rest api پیاده شده و الان قابل استفاده است؟
سمت موبایل که وضعیتش معلوم خیلی شیک کارشو میکنه.سمت پنل ادمین (داشبرد) spa هست و با axios درخواست میدن و اوکیه حالا ماند صفحات سایت اینجا چطور باید از api استفا ده کنه؟
۱.بیاد با jquery درخواست ajax بزنه و …
۲.برای فرانت از یک سری api استفاده بشه که خروجی html یا همون حالت عادی بدن.(که استاندارد نیست بنظرم)
اونطور که معلومه بیشتر جاها دارن از روش اول استفاده میکنن ولی ایا با این کار اینهمه فیچر template engine از دست نمیدیم؟ایا برای SEOمشکلی نداره که دیتای صفحه از طریق ajax باید فچ شود بعد نمایش داد؟ در کل شما روش دیگه ای پیشنهاد میکنید؟

سلام محمد جان
اگر نگران seo هستی میتونی محتوای سایت رو از طریق blade ها نمایش بدی(میدونم که بک اند پروژه ات لاراول هست) و یه سری کارهای دیگه مثلا ارسال فیلترها برای سرچ رو از طریق جی کوئری یا ویو جی اس(ترجیح میدم به جی کوئری) انجام بدی و یا اینکه اگر میخوای مثل پنل ادمین اینور هم spa باشه کلا، میتونی از nuxt استفاده کنی(میدونم که برای فرانت از ویو جی اس استفاده میکنی)

بحث سر یه چیز دیگس .اینکه اصلا بیای تو صفحات اصلی سایت درخواست ajax بزنی تا دیتات رو بگیری این مشکل منه؟
حالا اصلا تو حالت خیلی خوب ssr بخوای هندل کنی یا با شصت روش دیگه که تازه بشه همون حالت عادی بحثمون نیست.

وقتی دارای rest api کار میکنی بحث سر دیتا گرفتنه و نمایششه حالا تو بلید باشه یا هرچی تفاوتی نیست.

ممنون بابت پاسخت

شاید سوالت رو متوجه نشده باشم
مشکلت چیه با دیتا گرفتن از api ؟
خوب وقتی سایتت spa باشه دیتای صفحات اصلی هم از طریق ajax یا axios یا … گرفته میشه دیگه

صفحات اصلی سایت که spa نیست(فقط داشبرد).

خوب پس چرا میخوای دیتای صفحات اصلی رو از طریق api و ajax بگیری و به همون روش سنتی عمل نمیکنی؟

منظورم blade هست

اون موقع میشه روش دوم باید کلی از api ها دو بار بنویسی و dry نمیشه و استاندارد نیست.

منظور شما server side rendering به جای spa هستش ?

نه لپ حرفم اینه میگم که میشینیم api مینویسیم و json پاس میدیم. این همه جا خوبه به جز صفحات رایج سایت مثله صفحه اصلی یا صفحه محصول. نه داشبرد و غیره که به صورت spa هندل میشه. میگم تو این صفحات اگه بیام با jquery درخواست ajax بزنیم و دیتا رو بگیرم کار خوبی نیست به نظرم .سوالم بیشتر شبیه ایشونه :point_down::point_down::point_down:

باید دیتا رو از api به صورت json بخونی بعد با جاواسکریپت پارس کنی و توی صفحه نمایش بدی پیشنهاد می کنم از react و یا vuejs استفاده کنی برای اینکار. tutorial زیاد هست تو نت که کلیات رو سریع بتونی یاد بگیری

2 Likes

فک کنم من سوالمو بد پرسیدم.برداشت ها متفاوت بوده😂 من به vue مسلط هستم و داشبرد پروژه spa هست با ویو هم زدم.منتها داستان اینه چه راهکاری وجود داره که تو صفحات اصلی سایت بدون استفاده از js و فریمورک هاش از rest api استفاده کنیم؟
ایا مبشه تو کنترولر api رو call کرد و بعد دیتاشو همراه html ریترن داد .دیگه نیازیم js نیست.

تو فریم ورک فونیکس کتابخانه لایو ویو یک چیزی هست به نام mount صفحه یک بار که لود می شه از کنترلر خونده می شه ولی مشکل اینجاست که وقتی سایت شما تک صفحه ای اگر یک صفحه برید جلو دوباره برگدید به صفحه قبل چی ؟ همش رفرش کردن نیست.

کنترلر و … فقط یک بار برای شما این کارو ریترن می کنند ولی باز شما نیاز دارید صفحه که نویگیت می کنید و صفحه رفرش نمی شه باز بخونیدش به وسیله js

نمی دونم مطلب شما رو متوجه شدم یا خیر ولی بر اساس چیزی که متوجه شدم پاسخ بالا خدمتتون دادم

1 Likes

ممنون شهریار جان .
صفحات اصلی سایت مثله ایندکس و صفحه محصول و لیست محصولات و … که تک صفحه ای نیست.هر روتی وصل به یه متدی.
در کل نمیدونم چی و بد گفتم یا چی … اون چیزی که میخواستمو از تاپیک نگرفتم.