Eliminar Request.QueryString do URL?Possivel?

mpLopes

Power Member
Boas..
Estou a desenvolver um site em ASP .Net e utilizo as QueryStrings para saber o que fazer no site.. a questao é a seguinte: é possivel continuar a utilizá-las mas estas não estarem visiveis no URL?

espero ter-me feito entender.
Obrigado a todos..

Off: é apenas um pormenor sem importancia no site, mas que me agradaria mais no site caso fosse possivel. Aproveito este momento, para dizer, uma vez que o site está praticamente concluído, obrigado a todos que muito me ajudaram neste forum..:007:
 
Não sei bem o que queres fazer...

Podes pôr as variáveis na Session, ou usar hidden inputs e passar os valores por "POST"...

tens de te explicar melhor.
 
eu tambem tinha pensado nessa hipotese que o SoundSurfer disse do "POST".
mas pensa bem, se tu tiveres uma pagina tipo "noticias.aspx?noticia=2" supostamente mostra a 2º noticia (imaginemos) e se quiseres mostrar o url a alguem estando as querystrings escondidas (se e' que isso e' possivel) so ias ver "noticias.aspx" e penso que isso nao ia resultar em nada.

mesmo com o metodo "post" terias que enviar algum dado de uma pagina anteriro por isso para quem entre directamente na pagina das noticias penso que tambem nao ia resultar.
 
eu tambem tinha pensado nessa hipotese que o SoundSurfer disse do "POST".
mas pensa bem, se tu tiveres uma pagina tipo "noticias.aspx?noticia=2" supostamente mostra a 2º noticia (imaginemos) e se quiseres mostrar o url a alguem estando as querystrings escondidas (se e' que isso e' possivel) so ias ver "noticias.aspx" e penso que isso nao ia resultar em nada.

mesmo com o metodo "post" terias que enviar algum dado de uma pagina anteriro por isso para quem entre directamente na pagina das noticias penso que tambem nao ia resultar.

A ideia era fazer isso mesmo..em vez de aparecer noticias.aspx?noticas=2 aparecer apenas noticas.aspx mas eu poder continuar a saber que estou na noticia 2 ..
 
Parece-me que não é possível fazer o que eu pretendo.
Porque por exemplo, quando tenho um link tenho href para index.aspx?op=2 por exemplo..
E depois verifico com o request.querystring qual o valor do op..

Não me parece possivel fazer isto de outra forma..
Alguem me diz o contrario?:)
 
verificas da mesma forma, através do querystring

sendo assim seria óptimo.
acontece que não estou a conseguir efectuar o server.trasnfer.
no href não deixa. e se colocar onclick=server..etc também não está funcionar..

tenho que criar uma função para cada botão?não me parece razoável.

como posso resolver isto?
desde já agradeço..
 
É tudo uma questão de passar com o método get ou post tu estás a utilizar get. vê esta página e olha para a barra de navegação.

mas isso é uma questão de forms. como fazer isso com botões?que definem por exemplo a opção que pretendes realizar. por exemplo op=2. este valor do op não é alterado em nenhuma form, não tenho portanto forma de definir se quero method get ou post..

tal como VioletFluid estava a indicar não seria necessário isso. mas estou com o problema que referi em cima..
 
ah, então não dá para utilizar Request.form ... acho que só conseguias fazer isso com o apache e o mod rewrite.

segundo o VioletFluid, utilizando o server.transfer("index.aspx?op=2") e com o request.querystring conseguia fazer. mas não estou a conseguir colocar o código do server.transfer nos botoes.
 
faz uma experiencia:

Cria dois ficheiros, um default.aspx e um default2.aspx, no default coloca um server.transfer("default2.aspx?op=2") e no pageload do default2.aspx coloca response.write(request.querystring("op"))

Ao correres o default.aspx vais ver que ele vai escrever-te "2" no browser, pois é o valor correcto do querystring, mas se olhares para o endereço ele ainda estará apenas "default.aspx".

O server.transfer e o server.execute são basicamente o clássico #include.
 
faz uma experiencia:

Cria dois ficheiros, um default.aspx e um default2.aspx, no default coloca um server.transfer("default2.aspx?op=2") e no pageload do default2.aspx coloca response.write(request.querystring("op"))

Ao correres o default.aspx vais ver que ele vai escrever-te "2" no browser, pois é o valor correcto do querystring, mas se olhares para o endereço ele ainda estará apenas "default.aspx".

O server.transfer e o server.execute são basicamente o clássico #include.

sim..ja vi que isso funciona. a questão é que eu não tenho duas páginas. tenho uma mesma página.

e tenho uns botões, nos quais clicando, altero por exemplo a variável op. essa variável é lida com o request.querystring. gostaria de implementar esse método que falaste no meu caso.

ou seja, quando clico num botão efectuar o server.transfer("index.aspx?op=2") como disseste e ler esse valor com o request.querystring..
a questao é que não estou a conseguir colocar esse código no botão, num link.
 
Back
Topo