Diferença entre Server.Transfer e Response.Redirect

Diferença entre Server.Transfer e Response.Redirect
Diferença entre Server.Transfer e Response.Redirect

Vídeo: Diferença entre Server.Transfer e Response.Redirect

Vídeo: Diferença entre Server.Transfer e Response.Redirect
Vídeo: Empreendedor x Intraempreendedor | Onde e Quando empreender 2024, Dezembro
Anonim

Servidor. Transferência vs Resposta. Redirecionamento

Server e Response ambos são objetos no ASP. NET. O objeto Servidor fornece métodos e propriedades para várias tarefas relacionadas a um servidor. Transfer é um método do objeto Servidor e envia informações do estado atual para outro arquivo.asp para processamento. O objeto Response descreve métodos e propriedades relacionados à resposta de um servidor. Redirect é um método do objeto Response e envia uma mensagem para o navegador fazendo com que ele se conecte a uma URL diferente. Embora tanto o Server. Transfer quanto o Response. Redirect possam ser usados para transferir um usuário de uma página para outra, eles são diferentes na forma como realmente executam essa tarefa.

O que é Response. Redirect?

Redirect é um método no objeto Response. Quando o método Response é chamado, ele envia o código HTTP 302 e a URL da página da Web solicitada para o navegador dos usuários. O código HTTP 302 informa ao navegador do usuário que o recurso solicitado está localizado em uma URL diferente. Quando o navegador recebe o código, ele abre o recurso no novo local. A página da Web solicitada pode residir no mesmo servidor que a página que continha a solicitação ou pode residir em algum outro servidor. Ao solicitar uma página da web que resida no mesmo servidor que a página atual, o método Response pode ser usado da seguinte forma:

Response. Redirect(“nextPage.html”);

Ao solicitar uma página da web que resida em outro servidor, o método Response pode ser usado da seguinte forma:

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

O que é Server. Transfer?

Como mencionado anteriormente, Transfer é um método do Objeto Servidor. Quando o método Transfer é chamado, a solicitação original é modificada para ser transferida para alguma outra página no mesmo servidor. Quando uma nova página é solicitada usando o Server. Transfer, a URL mostrada no navegador da web dos usuários não muda. Isso ocorre porque a transferência acontece no lado do servidor e o navegador não tem nenhum conhecimento sobre a transferência. Usando a segunda sobrecarga para Server. Transfer(string path, bool preserveForm) e definindo o segundo parâmetro como true, variáveis de formulário postadas e strings de consulta podem ser disponibilizadas para a segunda página.

Qual é a diferença entre Server. Transfer e Response. Redirect?

Mesmo que tanto o Server. Transfer quanto o Response. Redirect possam ser usados para transferir um usuário de uma página para outra, existem algumas diferenças entre os dois métodos. Além da aparente diferença sintática, Response. Redirect faz uma viagem de ida e volta ao servidor, enquanto Server. Transfer muda o foco do servidor web para uma página web diferente. Portanto, usando Server. Transfer, os recursos do servidor podem ser preservados. Por outro lado, Response. Redirect pode ser usado para redirecionar o usuário para uma página da web em outro servidor, enquanto Server. Transfer só pode ser usado para redirecionar o usuário para páginas da web no mesmo servidor. Também usando Server. Transfer, as propriedades da página anterior podem ser acessadas pela nova página, mas isso não é possível com Response. Redirect. Além disso, o Response. Redirect altera a URL na barra de endereços do navegador quando a nova página é acessada, mas ao usar o Server. Transfer a URL original é mantida e o conteúdo da página é apenas substituído. Portanto, o usuário não pode usá-lo para marcar a nova página.

Recomendado: