Uri.EscapeDataString (Request.Url.AbsoluteUri) está errado em ambiente diferente, que mais devo usar?

StackOverflow https://stackoverflow.com/questions/360918

Pergunta

Eu estou gerando um retorno link url assim quando o usuário pressiona o botão para fechar desta página eles retornam para esta ReturnUrl.

ie http: // localhost:? 42605 / Search.aspx ReturnUrl = http% 3A% 2F% 2Flocalhost% 3A42605% 2FStuff% 2FViewStuff.aspx% 3FProjectId% 3D2246

Esta multa trabalha em ambiente de dev, mas em uat ambiente Tenho

http://app-uat.com/Search.aspx?ReturnUrl=http%3A%2F%2Fapp-uat-01.com%2FStuff%2FViewStuff.aspx%3FProjectId%3D2246

Observe o extra de 01 sobre o parâmetro ReturnUrl.

Assim, para gerar o ReturnUrl mordeu Atualmente estou usando

Uri.EscapeDataString (Request.Url.AbsoluteUri)

Como eu não tenho acesso direto ao ambiente uat Eu não sei o que vai definitivamente trabalho até depois de um ciclo de lançamento então se eu puder evitar isso errado a primeira vez que seria útil.

Olhando para Request.Url em depurar as possibilidades que eu tenho

DnsSafeHost ou Anfitrião

que poderia ser usada com

AbsolutePath ou LocalPath ou PathAndQuery

ou eu tenho

OriginalString

Ou talvez eu poderia usar o referer vez?

Foi útil?

Solução

PathAndQuery dá-lhe um caminho relativo com querystring vars, assim você não precisa se preocupar com o extra '01' no domínio. Apenas lidar com caminhos relativos.

A título de curiosidade, é o seu uat carga ambiente equilibrado? Parece que a sua aplicação está confuso quanto o domínio ao qual está respondendo por diante. Isso pode (possivelmente) aconteceria se um pedido atinge um servidor de equilíbrio diretamente contra o ponto de equilíbrio de carga ou o balanceador de carga solicitações para a frente para domínio específico de máquina?

gostaria de solicitar informações de seu administrador de rede. Se você descrever o que você está fazendo em grande detalhe, especialmente a sua aplicação, por vezes, acredita que está respondendo em app-uat-01, eles podem ver o problema imediatamente.

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