Différence entre Server.Transfer et Response.Redirect

Différence entre Server.Transfer et Response.Redirect
Différence entre Server.Transfer et Response.Redirect

Vidéo: Différence entre Server.Transfer et Response.Redirect

Vidéo: Différence entre Server.Transfer et Response.Redirect
Vidéo: C'EST QUOI UN ENTREPRENEUR ET L'ENTREPRENEURIAT? | Fabien Dessaint 2024, Novembre
Anonim

Server. Transfer contre Response. Redirect

Server et Response sont tous deux des objets dans ASP. NET. L'objet serveur fournit des méthodes et des propriétés pour diverses tâches liées à un serveur. Transfer est une méthode de l'objet Server et il envoie des informations sur l'état actuel à un autre fichier.asp pour traitement. L'objet de réponse décrit les méthodes et les propriétés liées à la réponse d'un serveur. Redirect est une méthode de l'objet Response et envoie un message au navigateur pour qu'il se connecte à une URL différente. Même si Server. Transfer et Response. Redirect peuvent tous deux être utilisés pour transférer un utilisateur d'une page à une autre, ils sont différents dans la manière dont ils exécutent réellement cette tâche.

Qu'est-ce que Response. Redirect ?

Redirect est une méthode dans l'objet Response. Lorsque la méthode Response est appelée, elle envoie le code HTTP 302 et l'URL de la page Web demandée au navigateur des utilisateurs. Le code HTTP 302 informe le navigateur des utilisateurs que la ressource demandée se trouve sous une URL différente. Lorsque le navigateur reçoit le code, il ouvre la ressource au nouvel emplacement. La page Web demandée peut résider sur le même serveur que la page contenant la demande ou elle peut résider sur un autre serveur. Lors de la demande d'une page Web résidant sur le même serveur que la page actuelle, la méthode de réponse peut être utilisée comme suit:

Response. Redirect(“pagesuivante.html”);

Lorsque vous demandez une page Web résidant sur un autre serveur, la méthode de réponse peut être utilisée comme suit:

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

Qu'est-ce que Server. Transfer ?

Comme mentionné précédemment, Transfer est une méthode de l'objet serveur. Lorsque la méthode Transfer est appelée, la demande d'origine est modifiée pour être transférée vers une autre page du même serveur. Lorsqu'une nouvelle page est demandée à l'aide de Server. Transfer, l'URL affichée dans le navigateur Web de l'utilisateur ne change pas. En effet, le transfert se produit côté serveur et le navigateur n'a aucune connaissance du transfert. En utilisant la deuxième surcharge pour Server. Transfer(string path, bool preserveForm) et en définissant le deuxième paramètre sur true, les variables de formulaire publiées et les chaînes de requête peuvent être mises à la disposition de la deuxième page.

Quelle est la différence entre Server. Transfer et Response. Redirect ?

Même si Server. Transfer et Response. Redirect peuvent être utilisés pour transférer un utilisateur d'une page à une autre, il existe quelques différences entre les deux méthodes. Outre la différence syntaxique apparente, Response. Redirect effectue un aller-retour vers le serveur, tandis que Server. Transfer modifie le focus du serveur Web sur une page Web différente. Par conséquent, en utilisant Server. Transfer, les ressources du serveur peuvent être préservées. D'autre part, Response. Redirect peut être utilisé pour rediriger l'utilisateur vers une page Web sur un autre serveur, tandis que Server. Transfer ne peut être utilisé que pour rediriger l'utilisateur vers des pages Web sur le même serveur. De plus, en utilisant Server. Transfer, les propriétés de la page précédente sont accessibles par la nouvelle page, mais ce n'est pas possible avec Response. Redirect. De plus, Response. Redirect modifie l'URL dans la barre d'adresse du navigateur lors de l'accès à la nouvelle page, mais lors de l'utilisation de Server. Transfer, l'URL d'origine est conservée et le contenu de la page est simplement remplacé. Ainsi, l'utilisateur ne peut pas l'utiliser pour mettre en signet la nouvelle page.

Conseillé: