Jeg modtog parametrene i webAPI'en og indsatte dem derefter i oracle-databasen, og først troede jeg, det var et oracle-databasekodningsproblem.
Efter at have tænkt grundigt over det, hvorfor bruger jeg Googles browser-plugin til at poste mit interface, kinesisk er der ingen uforståelige tegn????
Den postmetode, du selv har skrevet, er rodet???????
Begynd at fejlsøge og find ud af, at den postmetode, du skrev, var forvansket, da API'et modtog den.
Så det er ikke et problem med oracle-kodning.
Hvor kom den fra???
Problemet er:
ContentType http-headeren specificerer ikke kodningsformatet, selvom vi bruger utf-8-kodning til at sende fortiden, men API'en ved ikke, hvilket kodningsformat du har.
Derfor dekodes API'en efter sit eget standardkodningsområde, hvilket resulterer i kinesiske utydelige tegn.
Sådan løser du det:
byte[] bs = Encoding.UTF8.GetBytes(param); Her for at blive forandret,
Tilføj derefter "; charset=UTF-8"。
|