riok / Kreya

Kreya is a GUI client for gRPC and REST APIs with innovative features for environments, authorizations and more.
https://kreya.app
284 stars 5 forks source link

Kreya does not support decoding messages in 'https://github.com/googleapis/googleapis/blob/master/google/rpc/error_details.proto' #240

Open nhatca opened 3 months ago

nhatca commented 3 months ago

Describe the bug Kreya does not support decoding messages in 'https://github.com/googleapis/googleapis/blob/master/google/rpc/error_details.proto'

  "code": 13,
  "message": "Bad request",
  "details": [
    {
      /* Could not find any type in the set of imported protos */
      "@type": "type.googleapis.com/google.rpc.BadRequest",
      "value": "ChgKD25lc3RlZC5wYWdlU2l6ZRIFRXJyb3I="
    },
    {
      /* Could not find any type in the set of imported protos */
      "@type": "type.googleapis.com/google.rpc.ErrorInfo",
      "value": "CgtCQURfUkVRVUVTVBIIaWRlbnRpdHk="
    }
  ]
}

To Reproduce Steps to reproduce the behavior:

  1. Makes calls to the service and returns error messages inside the grpc-status-details-bin trailer.
  2. Kreya returns the corresponding results as above

Expected behavior Expect to decode messages with type Any included in details of google.rpc.Status

Environment (if possible, copy the information from the error dialog or the About menu):

CommonGuy commented 3 months ago

Just to clarify, did this work for you in a previous version of Kreya?

nhatca commented 3 months ago

Just to clarify, did this work for you in a previous version of Kreya?

@CommonGuy It used to work in version 1.12.0, after upgrading to 1.15.0 it cannot work.

CommonGuy commented 3 months ago

I couldn't verify that this worked in 1.12. We will add support for these types in the next release.

As a workaround, you would have to import these types manually somewhere in your protobuf files, then Kreya will recognize them.

CommonGuy commented 3 months ago

We have released a fix for this on our beta release channel. If you want to try it, see https://kreya.app/docs/faq/#how-can-i-use-kreya-beta-versions