+1 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

در توسعه برنامه های تحت وب یا وب سایت یک الگوی طراحی با نام Post/Redirect/Get وجود دارد، این الگوی طراحی چیست و در چه مواردی کاربرد دارد؟

1 پاسخ

+1 امتیاز
قبل توسط (1.1هزار امتیاز)

این الگوی طراحی یک راه حل برای جلوگیری از submit چند باره فرم های HTML در زمان فشردن دکمه F5 توسط کاربر است. در یک وب سایت وقتی کاربر با استفاده از یک فرم HTML اطلاعات خاصی را برای سرور submit می کند، در سمت سرور پس از انجام کارهای لازم برروی اطلاعات فرم (افزودن اطلاعات درون پایگاه داده)، پیغام مناسب (موفقیت یا خطا در عملیات) به صورت مستقیم برای کاربر فرستاده می شود. در این حالت اگر کاربر پس از مشاهده نتیجه، دکمه F5 را بزند عملیات submit مجددا اتفاق می افتد و برای مثال اطلاعات فرم HTML دوباره در پایگاه داده ذخیره می شود:

برای رفع این مشکل می توان از الگوی طراحی Post/Redirect/Get استفاده کرد، این الگو طراحی می گوید پس از اینکه submit فرم HTML با موفقیت انجام شد، کاربر را به صفحه دیگری‌ برای نمایش پیغام موفقیت یا خطا Redirect کنیم، این باعث می شود مرورگر کاربر یک درخواست GET برای Redirect شدن به صفحه جدید ایجاد کند و دیگر مشکل submit چند باره فرم های HTML بوجود نیاید:

قبل توسط (7.2هزار امتیاز)
عالی بود. مرسی
قبل توسط (1.1هزار امتیاز)
خواهش قابلی نداشت.

سوالات مشابه

+2 امتیاز
1 پاسخ 1.2هزار بازدید
0 امتیاز
1 پاسخ 449 بازدید
+1 امتیاز
3 پاسخ 67.7هزار بازدید
+1 امتیاز
1 پاسخ 653 بازدید
...