Reindirizzamento lato client sconosciuto

1

Sto riscontrando un problema nell'analisi del traffico con il sito web di un cliente. Sto usando il proxy ZAP per vedere tutte le richieste / risposte. Ora, ecco il problema Dì che faccio una richiesta a: www.example.com/index.html Non ho mai visto quella richiesta esatta nel proxy. Tale richiesta attiva molte altre richieste di script js e richiede anche www.example.com/api/documents, www.example.com/api/users, www.example.com/api/resetpasswords, ecc. ma mai la richiesta principale. Quando cerco index.html in tutti i pacchetti, l'unica corrispondenza che posso vedere è nel campo referer di tutte le richieste example.com/api, ognuno di essi ha index.html nel campo referer.

Che tipo di reindirizzamento è in atto qui? Ho provato a wget il file index.html principale e sono stati chiamati un sacco di script, oltre ad alcuni commenti su angular js. Non ci sono reindirizzamenti 30X coinvolti, e se ci fossero reindirizzamenti all'interno di qualche javascript, dovrei vedere la principale richiesta index.html che successivamente carica i javascript. Come sta succedendo questo reindirizzamento?

    
posta Percy 31.08.2016 - 22:13
fonte

1 risposta

0

Se il client è un browser, non è garantito ciò che accade esattamente. L'indice potrebbe essere memorizzato nella cache. Inoltre alcuni browser mostrano reindirizzamenti nella console di rete mentre non vengono mai inviati dal server. Inizia disattivando cache, cookie e altra memoria lato client (o usa una modalità di navigazione privata). Btw, AngularJS utilizza un caching estensivo, quindi sono quasi sicuro della cache.

Aggiorna

There are no 30X redirects involved, and if there were redirects inside of some javascript,

No, non ci sono effettivamente reindirizzamenti coinvolti, ma ci sono un sacco di 304 risposte. Spiegano il comportamento che chiedi e quello che succede è il seguente:

Per limitare il numero di richieste, i server web possono utilizzare una tecnica chiamata tag entità . Se il server Web supporta questo ed è configurato per usarli (Microsoft IIS è di default), su richiesta il server calcolerà un hash per questo documento (basato sull'ultima modifica) e includerà questo hash nella risposta (intestazione ETag). Nelle prossime richieste il client può inviare questo hash al server, che corrisponde all'hash con l'ETag corrente. Se corrispondono, il server può rispondere con una risposta vuota 304 (non modificatore).

Questa risposta vuota se ciò che vedi. Alcuni browser non elencano queste risposte, perché in essenza ' nulla è cambiato '. Se disabiliti la cache, il client ometterà le intestazioni If- nella richiesta, facendo in modo che il server rinvii il documento.

Con memorizzazione nella cache e ETags:

SenzamemorizzarenellacacheunETags:

    
risposta data 01.09.2016 - 11:16
fonte

Leggi altre domande sui tag