تفاوت بین Server.Transfer و Response.Redirect

تفاوت بین Server.Transfer و Response.Redirect
تفاوت بین Server.Transfer و Response.Redirect

تصویری: تفاوت بین Server.Transfer و Response.Redirect

تصویری: تفاوت بین Server.Transfer و Response.Redirect
تصویری: کارآفرینی: تفاوت بین کارآفرین جوان و مسن در چیست؟ آیا سن و سال در تجارت مطرح است؟ 2024, نوامبر
Anonim

Server. Transfer در مقابل Response. Redirect

Server و Response هر دو شی در ASP. NET هستند. شیء سرور متدها و خصوصیات را برای وظایف مختلف مربوط به یک سرور فراهم می کند. Transfer روشی از شی Server است و اطلاعات وضعیت فعلی را برای پردازش به یک فایل.asp دیگر ارسال می کند. شی Response روش ها و ویژگی های مربوط به پاسخ سرور را توصیف می کند. تغییر مسیر روشی از شی Response است و پیامی را به مرورگر ارسال می کند و آن را به URL دیگری متصل می کند. حتی اگر هر دو Server. Transfer و Response. Redirect می توانند برای انتقال کاربر از یک صفحه به صفحه دیگر استفاده شوند، اما در نحوه انجام این کار با یکدیگر متفاوت هستند.

Response. Redirect چیست؟

Redirect متدی در شی Response است. هنگامی که متد Response فراخوانی می شود، کد HTTP 302 و URL صفحه وب درخواستی را به مرورگر کاربران ارسال می کند. کد HTTP 302 به مرورگر کاربران اطلاع می دهد که منبع درخواستی تحت یک URL دیگر قرار دارد. وقتی مرورگر کد را دریافت می کند، منبع را در مکان جدید باز می کند. صفحه وب درخواستی می‌تواند در همان سروری باشد که صفحه حاوی درخواست است یا ممکن است در سرور دیگری باشد. هنگام درخواست یک صفحه وب که در همان سرور صفحه فعلی قرار دارد، روش Response را می توان به صورت زیر استفاده کرد:

Response. Redirect("nextPage.html");

هنگام درخواست یک صفحه وب مستقر در سرور دیگری، روش Response را می توان به صورت زیر استفاده کرد:

Response. Redirect("https://www.newServer.com/newPage.aspx");

Server. Transfer چیست؟

همانطور که قبلا ذکر شد، Transfer یک روش از شی سرور است.هنگامی که متد انتقال فراخوانی می شود، درخواست اصلی برای انتقال به صفحه دیگری در همان سرور تغییر می یابد. وقتی صفحه جدیدی با استفاده از Server. Transfer درخواست می شود، URL نشان داده شده در مرورگر وب کاربران تغییر نمی کند. این به این دلیل است که انتقال در سمت سرور انجام می شود و مرورگر هیچ اطلاعی در مورد انتقال ندارد. با استفاده از اضافه بار دوم برای Server. Transfer (مسیر رشته، bool reserveForm) و تنظیم پارامتر دوم به عنوان true، متغیرهای فرم ارسال شده و رشته های پرس و جو را می توان در صفحه دوم در دسترس قرار داد.

تفاوت Server. Transfer و Response. Redirect چیست؟

اگرچه هر دو Server. Transfer و Response. Redirect می توانند برای انتقال کاربر از یک صفحه به صفحه دیگر استفاده شوند، تفاوت هایی بین این دو روش وجود دارد. علاوه بر تفاوت نحوی ظاهری، Response. Redirect یک سفر رفت و برگشت به سرور انجام می دهد، در حالی که Server. Transfer تمرکز وب سرور را به یک صفحه وب متفاوت تغییر می دهد.بنابراین با استفاده از Server. Transfer می توان منابع سرور را حفظ کرد. از طرف دیگر Response. Redirect می تواند برای هدایت کاربر به یک صفحه وب در سرور دیگر استفاده شود در حالی که Server. Transfer فقط می تواند برای هدایت کاربر به صفحات وب در همان سرور استفاده شود. همچنین با استفاده از Server. Transfer می توان به ویژگی های صفحه قبلی در صفحه جدید دسترسی پیدا کرد اما با Response. Redirect این امکان وجود ندارد. علاوه بر این، Response. Redirect URL را در نوار آدرس مرورگر زمانی که به صفحه جدید دسترسی پیدا می‌کند، تغییر می‌دهد، اما هنگام استفاده از Server. Transfer، URL اصلی حفظ می‌شود و محتوای صفحه به تازگی جایگزین می‌شود. بنابراین کاربر نمی تواند از آن برای نشانک کردن صفحه جدید استفاده کند.

توصیه شده: