Cosa si dovrebbe fare contro il contenuto dell'attributo href: codifica HTML o URL?come codificare l'attributo href in HTML
<a href="???">link text</a>
Da un lato, poiché l'attributo href contiene URL, è necessario utilizzare la codifica URL. D'altra parte, sto inserendo questo URL in HTML, quindi deve essere codificato in HTML.
Per favore aiutami a superare questa contraddizione.
Grazie.
EDIT:
Ecco la contraddizione. Supponiamo che ci possano essere i caratteri "<" e ">" nell'URL. La codifica dell'URL non li sfuggirà, quindi ci saranno caratteri HTML riservati all'interno dell'attributo href, che viola lo standard. La codifica HTML sfuggirà ai caratteri '<' e '>' e l'HTML sarà valido, ma dopo di ciò ci saranno caratteri '&' inattesi nell'URL (questo è un carattere riservato per l'URL, è usato come delimitatore dei parametri della stringa di query) .
Reserved URL characters forma un superset di reserved HTML characters ad eccezione di "<" e ">" riservati per HTML ma non per URL.
EDIT 2:
mi sono sbagliato di personaggi '<' e '>', sono in realtà per cento sfuggito dalla codifica URL. Se è così, la codifica dell'URL è sufficiente in questo caso, non è vero?
Hai provato qualcosa di così lontano? –
Questo meme "hai provato qualcosa" sta diventando sciocco. Che cosa con il recupero degli errori del browser, gran parte della codifica dei dati è di proteggere da problemi di sicurezza. Come dovresti dirti di aver ragione se stai provando qualcosa? Supponi che qualunque suite di test di sicurezza tu abbia una copertura sufficiente? Questa è una domanda perfettamente ragionevole su una tecnica fondamentale. – Quentin
Quentin ha più o meno ragione, ma la domanda rimane, quali situazioni possono essere contraddittorie? Puoi mostrare un esempio? E hai provato entrambe le soluzioni e hanno entrambi funzionato, o entrambi non funzionano? –