Avatar billede horsted Nybegynder
30. november 2004 - 20:59 Der er 5 kommentarer og
1 løsning

Danske karakter i url

Jeg bruger custom fejlsider til at lave læsevenlige url's. Dette virker fint, sålænge jeg bare ikke bruger danske karakterer (æ,ø og å).

Problemeet opstår når jeg via et httpModul henter sidens url med HttpContext.Current.Request.RawUrl, som laver de danske karakter om til %c3%b8, %e8, ㆠosv.

Hvis den altid lavede ø om til noget specifik kan jeg selvfølgelig bare replace det, men den laver 'ø' om til flere forskellige tegnsammensætning i forskellige browsere...

Er der nogen der kan hjælpe mig med en løsning på dette? - evt. en måde man kan encode RawUrl så den kan indeholde dankse karakterer eller transformer dem ens.

På forhånd mange tak...

Mvh, horsted
Avatar billede driis Nybegynder
30. november 2004 - 21:09 #1
Det skulle du kunne opnå ved at bruge f.eks:
string url = HttpContext.Current.Server.UrlDecode(HttpContext.Current.Request.RawUrl);
Avatar billede horsted Nybegynder
30. november 2004 - 22:34 #2
Hej driss

Tak for dit svar... Den laver stadig tegnene om, men det lader til den ændre dem til det samme i de forskellige browsere, så jeg kan bruge Replace. æ laves om til 'ã¦' ø til 'ã¸' og å til 'ã¥'... Men kan jeg altid være sikker på det? Er der andet jeg kan gøre?

Burde jeg holde mig fra danske karakterer?

Kan jeg gøre noget ved, at de danske karakterer også ændres i adressen i Mozilla, men ikke i fx IE eller Opera?

Takker igen...
Avatar billede driis Nybegynder
30. november 2004 - 23:08 #3
Hvordan skriver du ud, når du siger at tegnene laves om ? Du skal huske at en streng i C# er Unicode.

Som udgangspunkt bør man ikke bruge Æ Ø Å i url's da de som udgangspunkt ikke kan bruges i en url, men bliver url indkodet til deres hexadecimale repræsentation i Unicode, som du oplever: %c3%b8. Men da alle gængse browsere kan håndtere dette er det i princippet ikke noget problem. Jeg synes dog ikke det er en pæn løsning.
Avatar billede horsted Nybegynder
30. november 2004 - 23:15 #4
Udskriver url'en fra httpModul med objResponse.Write(HttpContext.Current.Server.UrlDecode(HttpContext.Current.Request.RawUrl.ToLower()));

...bruger url'en til at sammenligne en dynamisk genereret url med, for at se hvilken sider der skal RewritePath til.
Avatar billede driis Nybegynder
01. december 2004 - 21:27 #5
Fungerer sammenligningen ?

Hvis du sætter tegnsættet på siden til UTF8 kan du sikkert se de danske tegn.
Avatar billede horsted Nybegynder
01. december 2004 - 23:08 #6
Prøver lidt forskelligt - Takker for de hjælpsomme svar...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester