Pergunta

Eu recentemente atualizou uma página no nosso servidor de asp clássico para asp.net

A página recebe postdata e salva em um arquivo. A página é usada por muitos de nossos clientes e da url (para a página ASP) é codificado em seu software. Isso significa que eu não posso simplesmente trocar a página antiga para fora para o novo. Estou tentando encontrar uma maneira de redirecionar os clientes a partir do URL antigo para o novo. Eu sei que você pode fazer um redirecionamento simples usando o IIS, mas isso não faz com que o postdata para ser redirecionado. Eu tentei configurar o arquivo para um redirecionamento temporário 307, isso funciona quando os dados está no FormData mas outras solicitações pós tais como aqueles que utilizam a biblioteca msxml não fazer o trabalho.

Basicamente eu preciso encontrar uma maneira em IIS para encaminhar uma solicitação post de uma página para outra sem perder o corpo.

Foi útil?

Solução 2

A melhor maneira que eu encontrei foi usar o código de redirecionamento temporário no IIS, embora isso não funcionou para originária postdata da biblioteca msxml. No final, eu tinha que escrever uma biblioteca COM em .NET para fazer o trabalho duro usando as bibliotecas system.encoding e, em seguida, faz referência a biblioteca COM no ASP

Outras dicas

Se as duas páginas estão dentro do mesmo aplicativo, você pode usar Server.Transfer. Isso só muda o processamento da página antiga para a nova, e mantém todos os dados de solicitação.

Você pode sempre programa (em Asp.old) um loop que passa por todas as form-data e inserir um registro com todos os valores no banco de dados. Você, então, redirecionar o usuário para a sua aspx páginas com o ID da linha no banco de dados como um parâmetro querystring. Tenha cuidado se o formulário de dados é sensível, aplicar algum tipo de segurança para garantir que os usuários não vai "roubar" outros dados, alterando a querystring.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top