הבדל בין Server.Transfer ו-Response.Redirect

הבדל בין Server.Transfer ו-Response.Redirect
הבדל בין Server.Transfer ו-Response.Redirect

וִידֵאוֹ: הבדל בין Server.Transfer ו-Response.Redirect

וִידֵאוֹ: הבדל בין Server.Transfer ו-Response.Redirect
וִידֵאוֹ: Differences between Entrepreneur and Intrapreneur. 2024, נוֹבֶמבֶּר
Anonim

Server. Transfer vs Response. Redirect

שרת ותגובה שניהם אובייקטים ב-ASP. NET. אובייקט שרת מספק שיטות ומאפיינים עבור משימות שונות הקשורות לשרת. העברה היא שיטה של אובייקט השרת והיא שולחת מידע על המצב הנוכחי לקובץ.asp אחר לעיבוד. אובייקט תגובה מתאר שיטות ומאפיינים הקשורים לתגובת שרת. Redirect היא שיטה של אובייקט ה-Response והיא שולחת הודעה לדפדפן שגורמת לו להתחבר לכתובת URL אחרת. למרות שניתן להשתמש גם ב-Server. Transfer וגם ב-Response. Redirect כדי להעביר משתמש מדף אחד לאחר, הם שונים באופן שבו הם מבצעים משימה זו בפועל.

מה זה Response. Redirect?

Redirect היא שיטה באובייקט ה-Response. כאשר שיטת התגובה נקראת, היא שולחת את קוד ה-HTTP 302 ואת כתובת האתר של דף האינטרנט המבוקש לדפדפן של המשתמשים. קוד ה-HTTP 302 מודיע לדפדפן המשתמשים שהמשאב המבוקש נמצא תחת כתובת URL אחרת. כאשר הדפדפן מקבל את הקוד, הוא פותח את המשאב במיקום החדש. דף האינטרנט המבוקש יכול להימצא באותו שרת כמו הדף שהכיל את הבקשה או שהוא יכול להימצא בשרת אחר. כאשר מבקשים דף אינטרנט השוכן באותו שרת כמו הדף הנוכחי, ניתן להשתמש בשיטת התגובה באופן הבא:

Response. Redirect(“nextPage.html”);

כאשר מבקשים דף אינטרנט השוכן בשרת אחר, ניתן להשתמש בשיטת התגובה באופן הבא:

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

מה זה Server. Transfer?

כפי שהוזכר קודם לכן, העברה היא שיטה של אובייקט השרת.כאשר שיטת העברה נקראת, הבקשה המקורית משתנה למעבר לדף אחר באותו שרת. כאשר מבוקש דף חדש באמצעות Server. Transfer, כתובת האתר המוצגת בדפדפן האינטרנט של המשתמש אינה משתנה. הסיבה לכך היא שההעברה מתרחשת בצד השרת ולדפדפן אין כל ידע על ההעברה. על ידי שימוש בעומס היתר השני עבור Server. Transfer(נתיב מחרוזת, bool preserveForm) והגדרת הפרמטר השני כ-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 המקורית נשמרת ותוכן העמוד פשוט מוחלף. אז המשתמש לא יכול להשתמש בו כדי לסמן את הדף החדש.

מוּמלָץ: