Mit den Eigenschaften type
und format
für Parameter und Schemas lässt sich der Datentyp der Property ermitteln. Das Attribut type
gibt den Typ des Attributs an, wenn es in JSON-Anfragen und -Antworten gesendet wird. JSON unterstützt eine kleine Anzahl von Datentypen, siehe json.org. “ Das Attribut format
enthält zusätzliche Informationen zum zugrunde liegenden Typ. Attribute haben immer ein type
-Attribut, einige haben aber möglicherweise auch ein format
-Attribut.
Beispielsweise können 64-Bit-Ganzzahlen nicht in JSON dargestellt werden, da JavaScript und JSON Ganzzahlen bis 2^53 unterstützen. Daher muss eine 64‑Bit-Ganzzahl in JSON-Anfragen/‑antworten als String dargestellt werden. Die Eigenschaft type
wird also auf „string“ gesetzt, die Eigenschaft format
jedoch auf „int64“, um anzugeben, dass es sich um eine 64‑Bit-Ganzzahl handelt.
Die JSON-Schemaspezifikation definiert bereits eine Reihe von gängigen Werten für das Attribut format
. Der Google APIs Discovery Service unterstützt einige dieser Werte und definiert auch andere. Im Folgenden finden Sie eine vollständige Liste der type
- und format
-Werte, die vom Google APIs Discovery Service unterstützt werden.
Typwert | Formatwert | Bedeutung |
---|---|---|
any |
|
Das Attribut kann einen beliebigen Typ haben. Wird durch die JSON-Schemaspezifikation definiert. |
any |
google.protobuf.Value |
Das Attribut hat die JSON-Darstellung des Typs google.protobuf.Value. |
array |
|
Ein JavaScript-Array von Werten. Das Attribut items gibt das Schema für die Arraywerte an. Wird durch die JSON-Schemaspezifikation definiert.
|
array |
google.protobuf.ListValue |
Die Property hat die JSON-Darstellung des Typs google.protobuf.ListValue. |
boolean |
|
Ein boolescher Wert, entweder "true" oder "false". Wird durch die JSON-Schemaspezifikation definiert. |
integer |
int32 |
Eine vorzeichenbehaftete 32-Bit-Ganzzahl. Sie hat einen Mindestwert von -2,147,483,648 und einen Höchstwert von 2,147,483,647 (einschließlich). |
integer |
uint32 |
Eine vorzeichenlose 32-Bit-Ganzzahl. Sie hat einen Mindestwert von 0 und einen Höchstwert von 4,294,967,295 (einschließlich). |
number |
double |
Eine 64-Bit-IEEE 754-Gleitkommazahl mit doppelter Genauigkeit. |
number |
float |
Eine 32-Bit-IEEE 754-Gleitkommazahl mit einfacher Genauigkeit. |
object |
|
Ein JavaScript-Objekt. Wird durch die JSON-Schemaspezifikation definiert. |
object |
google.protobuf.Struct |
Das Attribut hat die JSON-Darstellung des Typs google.protobuf.Struct. |
object |
google.protobuf.Any |
Das Attribut hat die JSON-Darstellung des Typs google.protobuf.Any. |
string |
|
Ein beliebiger String. Wird durch die JSON-Schemaspezifikation definiert. |
string |
byte |
Ein aufgefüllter base64-codierter String aus Byte, der mit einem URL-sicheren und Dateinamen-sicheren Alphabet (auch als "web-safe" oder "base64url" bezeichnet) codiert ist. Definiert durch RFC4648. |
string |
date |
Ein RFC3339-Datum im Format JJJJ-MM-TT. Wird in der JSON-Schemaspezifikation definiert. |
string |
date-time |
Ein RFC3339-Zeitstempel in UTC-Zeit. Im Format JJJJ-MM-TTTHH:mm:ss.SSSZ. Der Millisekundenteil (".SSS") ist optional. Wird in der JSON-Schemaspezifikation definiert. |
string |
google-datetime |
Ein RFC3339-Zeitstempel in UTC-Zeit. Im Format JJJJ-MM-TTTHH:mm:ss.SSSZ. Der Millisekundenteil (".SSS") ist optional. |
string |
google-duration |
Ein String endet mit dem Suffix "s" (in Sekunden), wobei die Anzahl von Sekunden vorangestellt wird. Dabei werden die Nanosekunden als Sekundenbruchteile angegeben. Der Punkt wird immer als Dezimalzeichen verwendet, nicht das Komma. |
string |
google-fieldmask |
Ein String, bei dem Feldnamen durch ein Komma getrennt sind. Feldnamen werden in Namenskonventionen mit kleingeschriebener Camel-Case-Schreibweise dargestellt. |
string |
int64 |
Eine vorzeichenbehaftete 64-Bit-Ganzzahl. Sie hat einen Mindestwert von -9.223.372.036.854.775.808 und einen Höchstwert von 9.223.372.036.854.775.807 (einschließlich). |
string |
uint64 |
Eine vorzeichenlose 64-Bit-Ganzzahl. Sie hat einen Mindestwert von 0 und einen Höchstwert von (2^64)-1 (einschließlich). |