L'invio di informazioni con un reindirizzamento HTTP che il browser deve inviare al percorso reindirizzato?

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

Domanda

Questo è possibile .. per esempio, immaginare che rispondere a una richiesta con un 302 (o 303), e informo il browser per fare una richiesta a un determinato luogo .. c'è un colpo di testa che posso inviare con il HTTP 302, in modo che la successiva richiesta dal browser dovrebbe includere tale intestazione?

So che avrei potuto fare questo con l'intestazione posizione, come nel reindirizzamento e specificare le informazioni nell'URL come una stringa di query .. ma mi chiedo se c'è un modo migliore .. sembra che dovrebbe essere un scenario legit ..

'Contenuto si è spostato, andate qui .. oh e si vorrà prendere questo con voi per dare alla posizione redirect'

Sto cercando di indovinare un grosso grasso no!

Grazie in anticipo.


Modifica

La ragione di questo è in relazione ai modelli di PRG, in cui si dispone di un URL GET e POST URL, dato che pubblichi i dati e non è accettabile, il server reindirizza alla GET, e fa un po 'magia' al fine di 'inviare i dati' a quella GET, utilizzando il più delle volte lo stato di sessione per memorizzare una variabile.

Tuttavia, questo possono ripartizione in scenari in cui molte di queste richieste PRG stanno avvenendo, concesso questo non è uno scenario comune e generalmente nessuno deve preoccuparsi di questo .. ma se si fare- Avrete hanno bisogno di un modo per identificare le richieste, questo può essere fatto con i parametri di stringa di query inviate nel 302 .. in modo che una voce specifica può essere messo in stato di sessione in base a tale richiesta.

La domanda è stata per quanto riguarda il tentativo di rimuovere il 'tasto di richiesta' dall'URL, e rendendo più implicito .. cookie 'sembrano' a lavorare, ma solo a rendere la finestra per la vite up più piccolo.

Sarebbe bello dire quando si va la 'location' ho specificato, inviare questi parametri.


Modifica

Basta notare, non sto cercando di ottenere il browser per inviare le intestazioni arbitrarie per la posizione, ma se ci sono delle intestazioni progettati per accennare il contesto della richiesta (come i parametri querystring potrebbe).

È stato utile?

Soluzione

Una risposta di reindirizzamento in sé non contiene alcun dato. È possibile reindirizzare utilizzando un URL con parametri di query, ma la nuova "location" bisogno di sapere come consumare tali parametri.

Altri suggerimenti

No, questo non è possibile. Non si può costringere il cliente a qualcosa. Hai appena può dire “questo non è il posto giusto, ma provate quella posizione, invece”. Ma non è garantito che il client invierà la stessa richiesta o ulteriore richiesta in tal nuova posizione. E dire al cliente di aggiungere un campo di intestazione specifica che la successiva richiesta alla nuova posizione è inoltre possibile.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top