apache / apache/servicecomb-java-chassis

Caused by: com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 31)): only regular white space (\r, \n, \t) is allowed between tokens

Offen
#2,499 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Java
Sterne
1.9k
Forks
814
Ø Merge
8 T. 23 Std.
Gemergte PRs (30 T.)
1

Beschreibung

微服务之间调用,A微服务用以下几种方式向B微服务发起请求,均报错
restTemplate.postForEntity(fullUrl, requestHttp, JSONObject.class);
restTemplate.postForEntity(fullUrl, requestHttp, String.class);
restTemplate.postForEntity(fullUrl, requestHttp, Object.class);

Caused by: com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 31)): only regular white space (\r, \n, \t) is allowed between tokens
at [Source: (org.apache.servicecomb.foundation.vertx.stream.BufferInputStream); line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:2337)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:710)
at com.fasterxml.jackson.core.base.ParserMinimalBase._throwInvalidSpace(ParserMinimalBase.java:688)
at com.fasterxml.jackson.core.json.UTF8StreamJsonParser._skipWSOrEnd(UTF8StreamJsonParser.java:3012)
at com.fasterxml.jackson.core.json.UTF8StreamJsonParser.nextToken(UTF8StreamJsonParser.java:724)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:4684)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4586)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3601)
at org.apache.servicecomb.common.rest.codec.produce.ProduceJsonProcessor.doDecodeResponse(ProduceJsonProcessor.java:64)
at org.apache.servicecomb.common.rest.codec.produce.ProduceProcessor.decodeResponse(ProduceProcessor.java:76)
at org.apache.servicecomb.transport.rest.client.http.DefaultHttpClientFilter.extractResponse(DefaultHttpClientFilter.java:104)

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne damit, die Inter-Service-Anfrage mithilfe der drei gezeigten RestTemplate-Aufrufe zu reproduzieren, und verfolge dann die Antwortdekodierung durch ProduceJsonProcessor.doDecodeResponse und DefaultHttpClientFilter.extractResponse. Bestätige, welcher Antwortinhalt den Fehler CTRL-CHAR 31 erzeugt, und dokumentiere oder behebe das Verhalten, sodass die Antwort erfolgreich dekodiert wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
api, backend
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.