Twoje PC  
Zarejestruj się na Twoje PC
TwojePC.pl | PC | Komputery, nowe technologie, recenzje, testy
B O A R D
   » Board
 » Zadaj pytanie
 » Archiwum
 » Szukaj
 » Stylizacja

 
M E N U
  0
 » Nowości
0
 » Archiwum
0
 » Recenzje / Testy
0
 » Board
0
 » Rejestracja
0
0
 
Szukaj @ TwojePC
 

w Newsach i na Boardzie
 
OBECNI NA TPC
 
 » metacom 17:18
 » Sherif 17:18
 » bieniek 17:18
 » dugi 17:16
 » NimnuL 17:16
 » XepeR 17:15
 » Hitman 17:15
 » bajbusek 17:12
 » Artaa 17:10
 » DJopek 17:08
 » KHot 17:07
 » rainy 17:06
 » g5mark 17:03
 » Dexter 16:58
 » AfiP 16:45
 » NWN 16:45
 » Kenny 16:40
 » Magnus 16:37
 » Saszkin 16:36
 » elliot_pl 16:31

 Dzisiaj przeczytano
 41142 postów,
 wczoraj 25974

 Szybkie ładowanie
 jest:
włączone.

 
ccc
TwojePC.pl © 2001 - 2024
A R C H I W A L N A   W I A D O M O Ś Ć
    

Insomnia i dane UTF-8 , Raffi 10/10/20 10:40
Witam,

Polecono mi program Insomnia Core aby zasymulować Web Service na REST i POST z danymi w JSON.
Wszystko pięknie działa do momentu jak nie wprowadzę polskich albo ruskich znaków. Wtedy w systemie odbierającym dostaję klasyczne krzaki. System odbierający dane w pełni zgodny z UFT-8. Odpowiedź do Insomnia przychodzi w polskimi znakami w UTF-8.

Czy muszę w pliku JSON jakoś zaznaczyć, że Insomia ma to wysłać w UTF-8?

struktura JSON

{
"NAZWA1": "test1",
"NAZWA2": "test2",
"NAZWA3": "test3",
"NAZWA4": "test4",
"WP": "testwp",
"LOT": "151231",
"ZT421": "ZT421"
}

  1. utf-8 , wrrr 10/10/20 10:58
    1. upewnij sie przy pomocy notepada++ (ew. innego narzedzia jakiego uzywasz) ze eksportowany JSON ma rzeczywiscie UTF-8 (moze cos sie przestawilo w ustawieniach i masz cos innego) - majac polskie znaki w tym pliku bedziesz rodzaj kodowania widzial w prawym dolnym rogu
    2. jesli ma UTF-8, to moze sproboj jeszcze nadac BOM (convert to utf-8 bom, rowniez w n++) na JSONa i wtedy zaimportowac

    1. sprawdzone N++ , Raffi 10/10/20 11:09
      i jest tak samo.
      odbieram krzaki dla UTF-8 i UTF-8 BOM

      to moje pierwsze podejście do JSON. Wcześniej robiłem to w XML i było OK ale tam jest deklaracja UTF-8

      1. ansi , wrrr 10/10/20 12:00
        mozesz jeszcze poprobowac przelaczac zestawy znakow w tym samym menu n++ (podmenu character sets czy jakos tak) co zmieniales utf-8/bom, zeby upewnic sie w czym to jest wygenerowane (nie jest jeszcze powiedziane ze masz bezpowrotnie walniete znaki), bo moze eksportuje ci np. win-1250 (poznasz jak krzaczory zmienia sie w ąęć czy co tam oczekujesz) i wystarczy po podlozeniu tego zestawu znakow konwertnac do UTF-8 i je utrzyma (konwersja bez widocznych znakow, czyli podstawionej wlasciwej mapy, utrwala krzaki na stale...)

        tak czy siak, powyzsze to tylko obejscie problemu, musisz na spokojnie przejrzec ustawienia programu z ktorego wypluwasz jasona, bo tam cos idzie nie tak (jak sie dokopiesz to najlepiej przestaw na utf-8 z bom, wtedy nie bedzie problemow z detekcja w roznych softach)

        1. notka , wrrr 10/10/20 12:04
          wiem ze to oczywiste, ale wole jeszcze dodac: wszystkie dalsze zabawy rob na nowym eksporcie, bo po konwersji co probowales wczesniej masz znaki zajechane bezpowrotnie ;)

        2. wszystko jasne , Raffi 10/10/20 13:10
          ale robię to też dla ruskich znaków i one nie pociągną w cp1250
          czyli jest utf-8 na 100% w N++ i takie coś kopiuję do Insomnia do sekcji JSON oraz ustawiam POST i wysyłam. No i dostaję krzaki w integracji z pakietu BarTendera (to taki middleware do wydruku etykiet z kodami) który ma 100% wsparcie UTF-8.

          Nie z tego nie rozumiem gdzie jest błąd.
          Najbliżej do braku jakiegoś nagłówka w pliku JSON ale nie mogę nic takiego znaleźć w wujku G.
          Coś jak ma XML

          1. Logicznym wnioskiem jest , Bitboy_ 10/10/20 13:24
            że to Insomnia pierniczy coś. Nie znam się na JSON, UTF ani XML, ale logika to moja biblia, i taki wniosek mi się nasuwa czytając to ;)

            9600K@4.6,AorusEliteZ390,CryorigR1
            Ultimate,GskillRipJawsV360016GB,AsusGTX1070
            ,FraDesION660P

            1. w sumie to może być , Raffi 10/10/20 13:27
              poszukam czegoś innego i zobaczymy

              1. jako alternatywy , Raffi 10/10/20 15:01
                użyłem soapui
                Niestety efekt ten sam czyli krzaki :(

  2. ale wysyłasz surowe teksty w utf-8 czy w jsonie są escape'owane? , Grocal 10/10/20 15:19
    Nie podałeś przykładu, ale np. jak chcesz jsonem wysłać wartość "Zażółć" to będzie wyglądało tak:

    {"field1":"Za\u017c\u00f3\u0142\u0107"}

    Na pewno, na razie, w ogóle...
    Naprawdę, naprzeciwko, stąd...
    Ortografia nie gryzie!

  3. już znalazłem :) , Raffi 10/10/20 15:32
    trzeba ręcznie dopisać do nagłówka

    application/json; charset=utf-8

    i wtedy idzie w UTF-8 bez escape

  4. to ja wykopię staroć "Kiedy nie ma JSONa" , DrLamok 10/10/20 21:20
    https://www.youtube.com/watch?v=b4QDxoWlPFw

    
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL