21. maj 2004 - 10:08Der er
8 kommentarer og 1 løsning
The page cannot be refreshed without resending the information
Jeg har en asp.net side hvor jeg laver nogle post back kald. Når man så efterfølgende refresh'er side spørger browser om man vil sende informationen igen. Dette giver nogler problemer fordi jeg ikke kan ser om brugeren ønsker at udføre samme handling igen eller bare lave en refresh. Der ud over er det ikke specielt brugervenligt. Er det muligt at undgå denne popup unden at skulle til at bruge redirect?
Støv, fibre og metalliske partikler kan påvirke både uptime, levetid og driftssikkerhed. Derfor arbejder flere datacentre systematisk med contamination control.
nielsbrinch>> desværre, cache har ikke så meget med sagen at gøre. Problematikken ligger i hele den måde at Http-protokollen er bygget op på, og den måde browseren henter en side (POST/GET). Når man trykker F5 (refresh) vil browseren altid hente siden igen på samme måde som sidst, og hvis det var en POST, så bliver browseren jo nødt til at sende informationerne igen, for at siden kan hentes igen på samme måde som sidst.
Så, nej... eneste måde at komme udenom det på er ved at tvinge browseren til at hente siden med GET, dette kan gøres med en Response.Redirect
Jeg siger ikke det er cache. Jeg siger bare det er nogle af de parametre der kan tilgås via Request-objektet. Det er jeg stadig overbevist om, for jeg benytter et modul der har den slags parametre defineret. Hvilke, ved jeg desværre ikke.
jeg kan stadigvæk ikke se hvad det skulle hjælpe. Request-objectet indeholde oplysninger om det pågældende request, ja. Men nu er det bare sådan, at når browseren spørger om data'erne skal postes igen i forbindelse med en refresh, så har det intet med serveren at gøre. Request'et er altså slet ikke lavet endnu, det sker først når brugeren trykker ja.
Man kunne forstille sig at at man ved en submit af siden, bestemmer at den side der skal leveres tilbage til browser ikke er en submittet side, dvs. når der trykkes på refresh er det bare en almindelig side der skal refreshes. Men jeg kan ikke finde noget der skulle gøre dette muligt på hverken Page eller Request. Redirect har jo den ulempe at siden loades igen.
det kan man ikke... du kan ikke fortælle browsere at "hej du, denne side skal hentes med POST, men hvis brugeren finder på at refreshe siden, så skal det være GET". Så mister man jo hele pointen i at refreshe en side, da det jo ikke er en 100% refresh så.
Det ser ikke ud som om der kommer en løsning på mit problem, så jeg lukker spørgsmålet.
nielsbrinch og cyberfessor, tak for jeres kommentarer :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.