URL:N merkkikoodaus ?

Niin, ehkä URL, ehkä URI ....

Mutta:

Jos http -palvelimella (tarkka tyyppi ei ole tiedossa, mutta eiköhän noista yli 90% ole apachen eri versioita) on tiedosto:

http://www.esimerkkipalvelin.fi/files/päivänavaus.mp3

( esimerkki EI ole toimiva, mutta kertoo hyvin, mistä on kysymys - "ä" -kirjain tiedostonimessä ! )

Mitä standardit sanovat siitä, mikä on http GET -pyynnössä oleva merkkivalikoima ?

Itse kokeilin imuroida tuohon verrattavissa olevan linkin perusteella mp3 -tiedostoa, mutta kumpikaan, ei Opera, eikä Firefox , osannut imuroida tuollaista, eli ilmeisesti selain ja vastapäässä oleva http -palvelin olivat eri mieltä käytettävästä merkkivalikoimasta.

Seuraavaksi kokeilin tehdä Delphillä ohjelman, joka osaa imuroida tiedoston silloinkin, kun URL:ssä tai URI:ssa (kumpi sitten lieneekin) on ä -kirjain.

Jos oikein muistan, niin tätä ei osannut oletuksena Synapse eikä Indy (Indy tulee uudempien Delphien mukana, Synapsen voi imuroida ja asentaa erikseen).

Seuraavaksi kokeilin Microsoftin Inet API -ohjelmointirajapintaa - ja tämä johti onnistuneeseen lopputulokseen.

Sitä en tiedä, mitä Microsoftin Inet API sisäisesti tekee, mutta se tuli todettua, että Inet API osaa homman oikein myös silloin, kun URL/URI sisältää esim. ä -kirjaimen.

Asian voisi varmaan kokeilla laittamalla omatekoisen http -palvelimen pystyyn, ja katsomalla, millainen GET -pyyntö tulee Microsoftin Inet API:a käyttävältä ohjelmalta, kun ohjelman käsketään noutaa omalta http -palvelimelta tiedosto, jonka nimessä on ä ja/tai ö -kirjain.

Mutta sanovatko alan standardit http GET -pyynnön merkkikoodauksesta jotakin, vai onko vain sattumaa, että Microsoftin Inet API ja http -palvelin (todennäköisesti Apache) sattuivat olemaan samaa mieltä käytettävästä merkkikoodauksesta.

Mielenkiintoista on myös, miksi sen paremmin Opera kuin Firefox eivät kumpikaan osanneet hommaa oikein, eikö ?
4524
Äänestä

Muut lukivat myös

Vastaukset 4

Vanhimmat
  • Tuota IRI:ä ei välttämättä tarvita jos ei sitten välttämättä halua tukea kyriilistä kirjoitusta (venäjä), kiinaa, japania jne. Jos tarve on että ääkköset yms tavalliset "länsimaiset" kirjoitusmerkit toimivat niin sitten tuo "url enkoodaus"/prosentti enkoodaus riittää.

    URL-enkoodaus / %-koodaus koodaa ISO-8859-1 merkistöstä ascii merkistön ylittävän osan sekä ascii merkistön kontrollimerkit käyttäen %-merkintöjä. Muilta osin merkit tulevat sellaisenaan. Jonkun verran siellä on kuitenkin ns. varattuja merkkejä joita ei voi osoitteessa käyttää

    Äänestä

  • dthhdgdgh kirjoitti:

    Tuota IRI:ä ei välttämättä tarvita jos ei sitten välttämättä halua tukea kyriilistä kirjoitusta (venäjä), kiinaa, japania jne. Jos tarve on että ääkköset yms tavalliset "länsimaiset" kirjoitusmerkit toimivat niin sitten tuo "url enkoodaus"/prosentti enkoodaus riittää.

    URL-enkoodaus / %-koodaus koodaa ISO-8859-1 merkistöstä ascii merkistön ylittävän osan sekä ascii merkistön kontrollimerkit käyttäen %-merkintöjä. Muilta osin merkit tulevat sellaisenaan. Jonkun verran siellä on kuitenkin ns. varattuja merkkejä joita ei voi osoitteessa käyttää

    Testailin joutessani ja laitoin apacheen jakoon tiedostonnimen jossa on ääkkösiä. Selaimella avatessani se toimi sukkana ok eikä apachen konfiguraatioon tarvinnut tehdä mitään. Selain huolehtii clientin päässä url-enkoodauksesta läpinäkyvästi eikä siitä tarvitse itse välittää

    Hauska pieni yksityiskohta (toimii ainakin firefoxilla): kopioimalla koko osoitteen osoiteriviltä saat sen url-enkoodattuna. Jos kopioit vain osan osoitteesta saat sen ilman enkoodausta. Tällä voi vaikka kokeilla :)
    http://fi.wikipedia.org/wiki/Ääkköset

    Äänestä

Kommentoi aloitusta


ä_ö_URLeissa ? kirjoitti:

Niin, ehkä URL, ehkä URI ....

Mutta:

Jos http -palvelimella (tarkka tyyppi ei ole tiedossa, mutta eiköhän noista yli 90% ole apachen eri versioita) on tiedosto:

http://www.esimerkkipalvelin.fi/files/päivänavaus.mp3

( esimerkki EI ole toimiva, mutta kertoo hyvin, mistä on kysymys - "ä" -kirjain tiedostonimessä ! )

Mitä standardit sanovat siitä, mikä on http GET -pyynnössä oleva merkkivalikoima ?

Itse kokeilin imuroida tuohon verrattavissa olevan linkin perusteella mp3 -tiedostoa, mutta kumpikaan, ei Opera, eikä Firefox , osannut imuroida tuollaista, eli ilmeisesti selain ja vastapäässä oleva http -palvelin olivat eri mieltä käytettävästä merkkivalikoimasta.

Seuraavaksi kokeilin tehdä Delphillä ohjelman, joka osaa imuroida tiedoston silloinkin, kun URL:ssä tai URI:ssa (kumpi sitten lieneekin) on ä -kirjain.

Jos oikein muistan, niin tätä ei osannut oletuksena Synapse eikä Indy (Indy tulee uudempien Delphien mukana, Synapsen voi imuroida ja asentaa erikseen).

Seuraavaksi kokeilin Microsoftin Inet API -ohjelmointirajapintaa - ja tämä johti onnistuneeseen lopputulokseen.

Sitä en tiedä, mitä Microsoftin Inet API sisäisesti tekee, mutta se tuli todettua, että Inet API osaa homman oikein myös silloin, kun URL/URI sisältää esim. ä -kirjaimen.

Asian voisi varmaan kokeilla laittamalla omatekoisen http -palvelimen pystyyn, ja katsomalla, millainen GET -pyyntö tulee Microsoftin Inet API:a käyttävältä ohjelmalta, kun ohjelman käsketään noutaa omalta http -palvelimelta tiedosto, jonka nimessä on ä ja/tai ö -kirjain.

Mutta sanovatko alan standardit http GET -pyynnön merkkikoodauksesta jotakin, vai onko vain sattumaa, että Microsoftin Inet API ja http -palvelin (todennäköisesti Apache) sattuivat olemaan samaa mieltä käytettävästä merkkikoodauksesta.

Mielenkiintoista on myös, miksi sen paremmin Opera kuin Firefox eivät kumpikaan osanneet hommaa oikein, eikö ?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu