Il passaggio di un nome file al browser firefox lo fa sostituire spazi con %2520
anziché %20
.Uno spazio HTML viene visualizzato come% 2520 anziché% 20
Ho il seguente codice HTML in un file chiamato myhtml.html
:
<img src="C:\Documents and Settings\screenshots\Image01.png"/>
Quando carico myhtml.html
in Firefox, l'immagine si presenta come immagine spezzata. Quindi faccio clic destro sul collegamento per visualizzare l'immagine e mostra questo URL modificato:
file:///c:/Documents%2520and%2520Settings/screenshots/Image01.png
^
^-----Firefox changed my space to %2520.
Che diamine? Ha convertito il mio spazio in un %2520
. Non dovrebbe essere convertirlo in un %20
?
Come modificare questo file HTML in modo che il browser possa trovare la mia immagine? Cosa sta succedendo qui?
Hexblot è effettivamente corretto qui. Di solito questo succede quando si codifica l'url programmando, e un bot entra e lo codifica una seconda volta. I bot hanno una brutta abitudine di farlo. Ce ne sono due in cui puoi gestire questo problema. 1) Puoi 404 o 401 con un'eccezione try catch oppure puoi scrivere una piccola funzione che decodificherà i valori decodificati prima di passare a un altro metodo per la logica aziendale. –
Questo mi ha aiutato a capire perché lo stavo ricevendo quando ho inviato una richiesta jQuery Ajax. Stavo impostando l'attributo data in una richiesta GET ajax con la funzione encodeURIComponent sul valore, ma jQuery lo fa già per impostazione predefinita, quindi perché stavo ottenendo% 2520. Davvero utile grazie. – Asher
Non c'è un argomento della riga di comando per chrome per dirlo o interpretare o non interpretare il collegamento? –