Encoding med iso-8859-1 åäö blir fel för resrobot!?
Hej,
Anropar man https://api.trafiklab.se/samtrafiken/resrobotsu...<API_Key>&apiVersion=2.1&coordSys=WGS84&from=Sodertull
får man tillbaks resultat enligt följande...
{"findlocationresult":{"from":{"location":[{"@x":"11.18164","@y":"58.938322","bestmatch":"true","displayname":"Södertull (Strömstad kn)","type":"S","locationid":7442207}
Bokstaven ö känns fel här eller? Konverterar jag från iso-8859-1 till utf-8 ser ändå ö lika konstigt ut, dvs representerat som ö.
Vad är lösningen?
Följ inlägget
0
följare
Hej Joel!
Tecknet "ö" kodat i UTF-8 men tolkat med ISO-8859-1 blir "ö". (Hex: C3 B6)
Konverterar du mellan olika encodningar så så ändrar du inte hur det ser ut, det är det som är idén med att konvertera.
Du ska alltså inte konvertera från ISO-8859-1, utan snarare tolka strängen som UTF-8 från början.
Märk att det finns en del skillnader i encodningen när vår leverantör får vår nya proxy på plats, så det är kanske inte värt att lägga för mycket jobb på encodningen just nu.
/ Lars
Okej, hittade en lösning.
När jag lade till följande på min HttpClient (.NET), vilket jag såg var något ni skickade i headern på er sida där man kan testa API:et
httpClient.DefaultRequestHeaders.TryAddWithoutValidation("Accept-Encoding", "deflate, gzip");
Och sedan packade upp mitt content efter att ha mottagit resultatet så såg allt rätt ut, utan att ändra något med encoding.
/ Joel
Verkar som att något fixats med proxyn och encodings för nu fungerar mina tigiare anrop utan att bry mig om varken encoding eller deflate, gzip.