Hej! Kolla på HttpUtility.UrlEncode eller Server.UrlEncode(?) HttpUtility.UrlEncode har jag testat utan framgång. När du skriver som ovan blir det default encoding: UTF-8. Nu testade jag att köra Urlencode på bara sms-texten, i stället för hela url:en, och då fungerar det.Anropa webbsida med åäö i parameter
Bakgrunden är denna: vi ska plocka ut alla som är bokade till nästa dag och skicka en påminnelse via sms. För det använder vi telias sms-tjänst där parametrarna är mobilnummer och sms-texten.
När jag skriver in adressen och parametrarna direkt i webbläsaren fungerar det bra med åäö.
När jag kör via mitt program så får jag svaret "Ogiltigt tecken i meddelande" från webbsidan. Texter utan åäö går däremot bra.
Jag använder mig av nedanstående (förkortade) kod.
Gör jag något fel?
Kan man ändra teckenuppsättningen på något sätt?
Finns det någon alternativ metod?
'---Skapa URl
Dim strUrl As String = "https://telemat.telia.com/aps/APSmsg?id=99999&passwd=XXXXXXX"
strUrl &= "&recipients=" & nr
strUrl &= "&msg=" & text
'---Skapa webbanrop
Dim objRequest As Net.WebRequest = Net.WebRequest.Create(strUrl)
'---Påloggning till proxyn
objRequest.Proxy.Credentials = New NetworkCredential("xxxxxx", "xxxxxxxxxxxx")
'---Proxy-adressen
Dim uriProxy As New Uri("http://proxy.domain.se:8080/array.dll?Get.Routing.Script")
'---Lägg in proxyn
objRequest.Proxy.GetProxy(uriProxy)
'---Anropa webbsidan, hämta svaret
Dim objResponse As Net.WebResponse = objRequest.GetResponse
'---Skapa en läsare för svaret
Dim objReader As IO.StreamReader = New IO.StreamReader(objResponse.GetResponseStream)
'---Lägg svaret i en variabel
Dim strContent As String = objReader.ReadToEndSv: Anropa webbsida med åäö i parameter
Sv:Anropa webbsida med åäö i parameter
HttpUtility.UrlEncode hittar man ju under System.Net,
men var hittar jag Server.UrlEncode?Sv: Anropa webbsida med åäö i parameter
Men Telias app kanske förväntar sig ISO Latin 1.
Det är nästan alltid sådan mismatch som orsakar "problem med åäö" i webapps i Sverige.
Eftersom våra svenska tecken kodas helt olika i respektive textkodning.
Så du får höra med dem hur det ska skickas.
Sen göra URLEncode med rätt teckentabell t.ex.
HttpUtility.UrlEncode("é", System.Text.Encoding.GetEncoding("ISO-8859-1"))Sv:Anropa webbsida med åäö i parameter
Tack till alla inblandade.