azist / azos

A to Z Sky Operating System / Microservice Chassis Framework
MIT License
213 stars 29 forks source link

Json Deserialization error #836

Closed itadapter closed 1 year ago

itadapter commented 1 year ago
itadapter commented 1 year ago

See the bad body captured:

bad-json-body.txt

Error

{
  "OK": false,
  "http::code": 400,
  "http::descr": "Bad Request body",
  "error": "MvcException",
  "isauth": false,
  "data":
    {
      "ns": "wave.mvc",
      "type": "HTTPStatusException",
      "code": 0,
      "cause":
        {
          "ns": "ser.json",
          "type": "JazonDeserializationException",
          "code": 0,
          "jz.code": "eUnterminatedObject",
          "jz.txt": "Unterminated object",
          "jz.p.char": 3845,
          "jz.p.ln": 1,
          "jz.p.col": 3845,
          "jz.path": "{batch{Data[#0{",
          "jz.src": "0\\\\\\\",\\\\\\\"--info-level\\\\\\\":\\\\\\\"1\\\\\\\",\\\\\\\"allow\\\\\\\":{\\\\\\\"entity\\\\\\\":\\\\\\\"*\\\\\\\"}}},\\\\\>        },
      "http::code": 400,
      "http::descr": "Bad Request body"
    },
  "dev::dump":
    {
      "TypeName": "Azos.Wave.FilterPipelineException",
      "Message": ">>error>backend-info>realip>callflow>Portal>session>dconv>latency>cors>  [Azos.Wave.MvcException] MVC handler error in work processi>
itadapter commented 1 year ago

According to unit test, this is not a JSON problem. Looks like it is HTTP transport cutting 3900+char datagram at 3845, consequently the data fed to JSON deserializer is truncated and "UnterminatedObject" results.