سینا قاسمی
3 سال پیش توسط سینا قاسمی مطرح شد
5 پاسخ

شناور شدن و جا به جای در بین صفحات وب چگونه اتفاق میوفتد

سوالی که دارم مربوط میشه به بک اند دولوپر ها شاید هم فرانت کار ها نمیدونم، سوال چیه؟
ما چجوری در بین صفحات یک وبسایت شناور میشیم ؟؟ توضیحات : مثلا یک وبسایت 200 صفحه داره و این 200 صفحه همه در یک فایل index
مثلا URL اینه : home/directory بعد مثلا ما روی یک چیزی کلیک میکنیم یهو فرانت تغییر میکنه و URL میشه home/directory/adverts چه اتفاقی میوفته دقیقا ؟ چطوری توی یک فایل index این همه صفحه وجود داره ؟ و چطوری یهو فرانت عوض میشه کلا عوض میشه ؟ ولی هدر و فوتر ثابت میمونن این سوالم برای وبسایت های غیر وردپرسی هست


ثبت پرسش جدید
عبدالرحمان کیانی
تخصص : Backend developer
@abdolrahman 3 سال پیش مطرح شد
0

این چیزی که درباره ش حرف میزنین بهش میگن single page application یا spa .
این جور برنامه ها با جاوا اسکیپت و معمولا با فریمورک های محبوبی مثل react و vue ساخته میشن
برای اطلاعات بیشتر میتونین درباره ش سرچ کنین . این لینک هم میتونه مفید باشه


علیرضا کفایتی
تخصص : برنامه نویس laravel, vue.js
@alirezakefayati 3 سال پیش مطرح شد
1

سلام
اولا این سوال مربوط به فرانت اند هست .
به این نوع سایت های که می فرمایید سایت های تک صفحه ای یا spa (single page application) میگویند .
معمولا این سایت ها را با جاوااسکریپت انجام میدن که خب خیلی زمان بر و طولانی و سخت هست . برای همین فریمورک و کتابخانه هایی برای این کار اومده که کار رو ساده کرده و امکان ساخت سایت spa رو هم داره . مثل vue , react angular ووو...


سبحان مولایی
تخصص : برنامه‌نویس وب: Python ::...
@websaz 3 سال پیش مطرح شد
1

سلام این نوع سایت ها spa هستن که می تونید توی react vue و angular پیدا سازی کنید همچنین یه کتابخونه js هست به نام Turbolinks که میتونید باهاش یک سایت تقریبا spa پیاده سازی کنید


ساجده درزی نیا
تخصص : backend
@sajededarzinia 3 سال پیش مطرح شد
0

سلام وقت بخیر توی بک اند این کار با mvc قابل اجراست هدر و فوتر توی یک صفحه برای بقیه ی صفحات ثابت میمونه و url هم با ساختار router عوض میشه


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 3 سال پیش مطرح شد
4

توضیحاتی که دوستان در خصوص SPA دادند کاملا صحیحه. اما احساس می‌کنم سوال و دغدغه شما چیز دیگری بود و خیلی مبنایی تر هست.

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

-root
    -index.php
    -about-us.php
    -contact-us.php
    -blog.php
        -post1.php
        -post2.php
        -...

اینجوری همه چیز خیلی مشخصه و می‌فهمیم که هر آدرس URL متناظر با یک فایل دقیقا در همون مسیر هست.
اما خوب همونطوری که خودتون هم اشاره کردید این قضیه به این شکل برای سایت های متوسط به بالا قابل انجام نیست.
به همین خاطر از معجزه Routing استفاده میشه.

یعنی شما میاید در تنظیمات وب سرورتون میگید هر درخواستی که اومد فارغ از URL ش و بجای اینکه بری دقیقا تو اون آدرس دنبال فایلی بگردی همشون رو به یک فایل یعنی index.php هدایت کن.

بعد در فایل index.php به زبون ساده میایم URL رو تجزیه می‌کنیم و با لیستی از الگوها و Route هایی که از قبل بهش دادیم مقایسه می‌کنه تا بفهمه با کدومش همخونی داره.

در نهایت، به یک فانکشن متصل میشه که میاد محتوای مورد نظر رو که بهش میگیم view تولید می‌کنه و در قالب response به کاربر نمایش میده.

روش های زیادی برای انجام این کار وجود داره و اکثر فریم ورک های مشهور هم مثل laravel و express و ... هم سیستم routing خودشون رو دارند.

نکته آخر اینکه SPA ها یک مفهومی در سمت فرانت اند هست و به صورت خلاصه به این معناست که بعد از ورود به سایت با کلیک کردن به بروی هر لینک، صفحه مجدد بارگزاری نمیشه. بلکه عملیات درخواست اطلاعات صفحه جدید در پشت صحنه بصورت Ajax انجام میشه و متناسب با پاسخ دریافتی می‌تونیم محتوای صفحه رو بروزرسانی کنیم. اینجوری احساسی شبیه به کار کردن با یک نرم افزار به کاربر دست میده نه وبسایت. به همین خاطر بهش میگن Single page application. ولی در نهایت باز هم سمت بک اند همون داستان Routing وجود داره.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام