Eg. for proto message which we want to store as goog.protobuf.Any field:
package foo.bar;
message Person {
string first_name = 1;
string last_name = 2;
}
Expected JSON is:
{
"@type": "foo.bar.Person",
"firstName": <string>,
"lastName": <string>
}
But we get:
{
"typeUrl": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
Notice the "typeUrl" key name instead of "@type".
This breaks interoperability between languages when using JSON.