Polskie znaki w Json

0

Witam,
chcę zrobić posta Jsonem i mam problem. Dopóki w name(nazwaMag) nie ma polskich znaków jest wszystko ok. Gdy jednak pojawia się polski znak dostaję zwrot z serwera "Serwer zdalny zwrócił błąd: (500) Wewnętrzny błąd serwera.". Wykorzystuję bibliotekę Newtonson Json. Ma ktoś może wiedzę jak poradzić sobie z polskimi znakami wykorzystując ta bibliotekę? Dodam że używając RestClienta w przeglądarce wszystko też działa poprawnie, polskie znaki przechodzą.

        public static MessageResult AddStockLocation(string nazwaMag, string ApiKey, string urlServer)
        {
            var stock_location = new Stock_Location()
            {
                name = nazwaMag.Trim(),
                action = "true"
            };


            var json = (JsonConvert.SerializeObject(stock_location)); 


            var post = @"/api/v1/stock_locations";
            WebClient wc = new WebClient();
            wc.Headers[ HttpRequestHeader.ContentType] = "application/json; charset=utf-8";
            wc.Headers.Add("X-Token", ApiKey); 
            var url = urlServer + post;

            var resp = wc.UploadString(url, "POST", json); 

            StockLocationOK updateResp = JsonConvert.DeserializeObject<StockLocationOK>(resp);
         }
0

Nie widzę problemu - sprawdź, jaką wartość ma zmienna json przed wysłaniem, czy polskie znaki są zakodowane prawidłowo? A może koduje ci do postaci \u00cośtam i zdalny serwer nie umie sobie z tym poradzić? Jaka wersja biblioteki?

0

W zmiennej json są wyświetlanie polskie znaki. Wersja biblioteki najnowsza.

0

Masz dostęp do serwera? Sprawdź, co tam się dzieje.

0

Dodałem kodowanie WebClienta i to pomogło. Problem rozwiązany.

wc.Encoding = Encoding.UTF8;

1 użytkowników online, w tym zalogowanych: 0, gości: 1