Ricarica la pagina in Safari senza inviare nuovamente il modulo?

2

A volte, voglio ricaricare una pagina in Safari, ma ho inviato un modulo nella pagina precedente. C'è un modo, a meno di entrare nella barra degli URL (con un mouse o con + L e premendo return ), per ricaricare il pagina senza invio di nuovo il modulo?

    
posta Timothy Mueller-Harder 28.03.2012 - 03:44
fonte

1 risposta

3

In senso stretto, no. Per semplici moduli HTML che utilizzano Common Gateway Interface (CGI), la pagina Web che vedi è l'output di un processo che utilizza i dati del modulo come input. In altre parole, il server ha bisogno dei dati del modulo per generare la pagina. Esistono molti modi per aggirare il problema utilizzando database di back-end, cookie, javascript, ecc. Ma in generale: no-form, no-result.

Hai menzionato facendo clic nella barra dell'URL e premendo Invio, ma se il modulo utilizza il metodo GET (forma i dati nell'URL stesso), quindi facendo clic nella barra dell'URL e premendo Invio lo si reinvia in modo efficace. Tuttavia, se il modulo utilizza il metodo POST (dati del modulo inviati nel corpo della richiesta HTTP), quindi facendo clic sulla barra dell'URL e premendo non verranno inviati i dati del modulo e quindi la pagina non verrà rigenerata.

Nota che se comunichi a Safari di ricaricare una pagina dei risultati di un modulo, di solito ti chiederà di confermare che vuoi davvero farlo, quindi invia di nuovo i dati del modulo. La ragione per cui si chiede è che potrebbe esserci qualche effetto collaterale del modulo (come la ricarica della carta di credito) che potresti non voler ripetere. È un design CGI scadente, ma succede.

    
risposta data 18.04.2012 - 21:11
fonte

Leggi altre domande sui tag