JSONStreamingAPI: Bereichsbezogen
Erstellen Sie eine große Streaming-JSON-Nutzlast, die in einer REST- oder SOAP-Anforderung zum Senden von Massendaten an eine Drittanbieter-API verwendet wird. Sie können die Nutzlast auch als JSON-Zeichenfolge für eine Nicht-Streaming-Option erstellen.
Verwenden Sie diese Methoden im Skriptschritt Workflow-Studio mit dem Namespace-Bezeichner sn_ih. Sie können diese API beispielsweise verwenden, um im Skriptschritt Workflow-Studio eine JSON-Nutzlast zu erstellen und den zurückgegebenen Wert an den REST-Schritt zu übergeben, um die Anforderung an einen Drittanbieterservice zu senden. Weitere Informationen finden Sie im Workflow-Studio Skriptschritt.
Sie können diese API nur in der Umgebung Workflow-Studio verwenden.
Um diese Klasse zu verwenden, müssen Sie die Methode build() in der Klasse JSONStreamingBuilder aufrufen, um ein JSONStreamingAPI-Objekt zurückzugeben. Weitere Informationen finden Sie unter JSONStreamingBuilder: Bereichsbezogen.
API-Aufrufreihenfolge
Generieren Sie JSON-Payloads mit diesen APIs in der folgenden Reihenfolge:
- JSONStreamingBuilder: Erstellt ein Generatorobjekt
- Verwenden Sie diese Methoden in der folgenden Reihenfolge, um ein Builder-Objekt zu erstellen:
- JSONStreamingBuilder(): Instanziiert das JSONStreamingBuilder-Objekt.
- withAttachment(): Optional. Erstellt das JSON-Objekt als Streaming-Anhang und speichert es in der Tabelle „Streaming-Anhänge“ [streaming_attachment]. Wenn Sie diese Methode nicht aufrufen, erstellt die API die Nutzlast als JSON-Zeichenfolge.
- RunesAt(): Optional. Legt eine Uhrzeit fest, nach der der Anhang abläuft. Muss auch withAttachment()- Methode aufrufen.
- build(): Gibt ein JSONStreamingAPI-Objekt zurück.
- JSONStreamingAPI: Erstellt die JSON-Nutzlast
- Verwenden Sie diese Methoden in der folgenden Reihenfolge, um die JSON-Payload zu erstellen:
- startObject(): Erstellt das übergeordnete JSON-Objekt.
- Methoden zum Generieren der JSON-Schlüssel-Wert-Paare, z. B. writeFieldName(), writeString()und writeNumberField().
- endObject(): Schließt das übergeordnete JSON-Objekt.
- getJSONString() oder getAttachmentId(): Gibt die von Ihnen erstellte JSON-Zeichenfolge oder Anhangs-ID zurück.
- close(): Schließt das JSONStreamingAPI-Objekt.
Größenbeschränkungen
Über diese API generierte Nutzlasten dürfen diese Größenbeschränkungen nicht überschreiten:
- Anhänge: 200 MB
- Zeichenfolgen: 5 MB
Beispiel
In diesem Beispiel wird ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert. Sie können diese Option verwenden, um Nutzlasten unter 5 MB zu erstellen.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}Alternativ verwendet dieses Beispiel die API im Skriptschritt und erstellt die Nutzlast als JSON-Zeichenfolge. Sie können diese Option verwenden, um Nutzlasten unter 5 MB zu erstellen.
(function execute(inputs, outputs) {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.startObject()
.enablePrettyPrint()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25")
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
outputs.payload = builder.getJSONString();
})(inputs, outputs);Ausgabe:
{
"firstName" : "John",
"lastName" : "Smith",
"age" : 25,
"address" : {
"streetAddress" : "21 2nd Street",
"city" : "Santa Clara",
"state" : "CA",
"postalCode" : "11111"
},
"phoneNumber" : [ {
"type" : "home",
"number" : "212 555-1234"
}, {
"type" : "fax",
"number" : "646 555-4567"
} ]
}JSONStreamingAPI – schließen ()
Schließt das JSONStreamingAPI-Objekt. Muss diese Methode aufrufen, um den Stream nach dem Erstellen eines JSON-Objekts zu schließen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}
JSONStreamingAPI – disablePrettyPrint()
Beendet die JSON-Formatierung für schön drucken.
Bevor Sie diese Methode aufrufen, müssen Sie zuerst enablePrettyPrint() aufrufen, um einem bestimmten Abschnitt eine JSON-Formatierung hinzuzufügen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
In diesem Beispiel wird dem Adressobjekt eine schön gedruckte Formatierung hinzugefügt.
try {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.startObject()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25")
.enablePrettyPrint()
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.disablePrettyPrint()
.writeFieldName("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getJSONString());
}
catch (err) {
gs.log("Exception: " + err);
}
finally {
builder.close();
}
{"firstName":"John","lastName":"Smith","age":25,
"address" : {
"streetAddress" : "21 2nd Street",
"city" : "Santa Clara",
"state" : "CA",
"postalCode" : "11111"
},"phoneNumber":[{"type":"home","number":"212 555-1234"},{"type":"fax","number":"646 555-4567"}]}JSONStreamingAPI – enablePrettyPrint()
Fügt einem JSON-Objekt oder einem Abschnitt eines JSON-Objekts eine ansprechende Druckformatierung hinzu.
Verwenden Sie die disablePrettyPrint()- Methode, um die Formatierung für den Druck in einem JSON-Objektabschnitt zu deaktivieren.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
try {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.enablePrettyPrint()
.startObject()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25")
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getJSONString());
}
catch (err) {
gs.log("Exception: " + err);
}
finally {
builder.close();
}
{
"firstName" : "John",
"lastName" : "Smith",
"age" : 25,
"address" : {
"streetAddress" : "21 2nd Street",
"city" : "Santa Clara",
"state" : "CA",
"postalCode" : "11111"
},
"phoneNumber" : [ {
"type" : "home",
"number" : "212 555-1234"
}, {
"type" : "fax",
"number" : "646 555-4567"
} ]
}JSONStreamingAPI – endArray()
Schließt ein Array innerhalb des übergeordneten JSON-Objekts.
Rufen Sie zuerst die Methode startArray() auf, um das Array zu öffnen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}
JSONStreamingAPI – endObject()
Schließt ein Objekt im übergeordneten JSON-Objekt.
Rufen Sie zuerst die Methode startObject() auf, um das Objekt zu öffnen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}
JSONStreamingAPI – getAttachmentId()
Gibt die sys_id des Anhangdatensatzes in der Tabelle „Streaming-Anhänge“ [streaming_attachment] zurück, der die JSON-Nutzlast enthält.
Sie müssen die Methode withAttachment() in der Klasse JSONStreamingBuilder aufrufen, um die JSON-Nutzlast als Anhang zu speichern, bevor Sie diese Methode aufrufen. Weitere Informationen finden Sie unter JSONStreamingBuilder: Bereichsbezogen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Sys_id des Anhangdatensatzes in der Tabelle „Streaming-Anhänge“ [streaming_attachment], der die JSON-Nutzlast enthält. |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}
JSONStreamingAPI – getJSONString()
Gibt das JSON-Objekt als Zeichenfolge zurück.
Um das JSON-Objekt als Zeichenfolge zurückzugeben, rufen Sie nicht die Methode withAttachment() in der Klasse JSONStreamingBuilder auf. Weitere Informationen finden Sie unter JSONStreamingBuilder: Bereichsbezogen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Enthält das mit der JSONStreamingAPI erstellteJSON-Objekt. |
try {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.startObject()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25")
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getJSONString());
}
catch (err) {
gs.log("Exception: " + err);
}
finally {
builder.close();
}
{
"firstName" : "John",
"lastName" : "Smith",
"age" : 25,
"address" : {
"streetAddress" : "21 2nd Street",
"city" : "Santa Clara",
"state" : "CA",
"postalCode" : "11111"
},
"phoneNumber" : [ {
"type" : "home",
"number" : "212 555-1234"
}, {
"type" : "fax",
"number" : "646 555-4567"
} ]
}JSONStreamingAPI – startArray()
Öffnet ein Array im übergeordneten JSON-Objekt.
Fügen Sie die Methode endArray() ein, um das Array zu schließen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}
JSONStreamingAPI – startArrayField(String fieldName)
Erstellt ein Array innerhalb des übergeordneten JSON-Objekts.
Umgeben Sie diese Methode mit den Methoden startArray() und endArray(), um das Array zu öffnen und zu schließen.
| Name | Typ | Beschreibung |
|---|---|---|
| fieldName | Zeichenfolge | Der Name des Arrays. |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
try {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.startObject()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25")
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.startArrayField("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getJSONString());
}
catch (err) {
gs.log("Exception: " + err);
}
finally {
builder.close();
}
JSONStreamingAPI – startObject()
Öffnet ein Objekt im übergeordneten JSON-Objekt.
Erfordert die Methode endObject(), um das Objekt zu schließen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}
JSONStreamingAPI – writeBoolean(Boolean state)
Fügt dem übergeordneten JSON-Objekt einen booleschen Wert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Status | Boolean | Der dem übergeordneten JSON-Objekt hinzuzufügende boolesche Wert. Gültige Werte:
|
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
try {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.startObject()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeFieldName("activeUser")
.writeBoolean(true)
.writeNumberField("age","25")
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getJSONString());
}
catch (err) {
gs.log("Exception: " + err);
}
finally {
builder.close();
}
JSONStreamingAPI – writeBooleanField (Zeichenfolge fieldName, boolescher Wert)
Fügt dem übergeordneten JSON-Objekt ein boolesches Feld und einen Wert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| fieldName | Zeichenfolge | Der Name des Felds, das dem übergeordneten JSON-Objekt hinzugefügt werden soll. |
| Wert | Boolean | Der dem übergeordneten JSON-Objekt hinzuzufügende boolesche Wert. Gültige Werte:
|
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
try {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.startObject()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeBooleanField("activeUser", true)
.writeNumberField("age","25")
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getJSONString());
}
catch (err) {
gs.log("Exception: " + err);
}
finally {
builder.close();
}
JSONStreamingAPI – writeFieldName(String name)
Fügt dem übergeordneten JSON-Objekt einen Feldnamen hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Name | Zeichenfolge | Feldname, der dem übergeordneten JSON-Objekt hinzugefügt werden soll. |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}
JSONStreamingAPI – writeNull()
Fügt dem übergeordneten JSON-Objekt einen Nullwert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
try {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.startObject()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeFieldName("activeUser")
.writeNull()
.writeNumberField("age","25")
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getJSONString());
}
catch (err) {
gs.log("Exception: " + err);
}
finally {
builder.close();
}
JSONStreamingAPI – writeNullField(String fieldName)
Fügt dem übergeordneten JSON-Objekt ein Feld mit einem Nullwert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| fieldName | Zeichenfolge | Der Name des Nullfelds. |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
try {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.startObject()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeNullField("activeUser")
.writeNumberField("age","25")
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getJSONString());
}
catch (err) {
gs.log("Exception: " + err);
}
finally {
builder.close();
}
JSONStreamingAPI – writeNumberField(Zeichenfolge fieldName, Zeichenfolge encodedValue)
Fügt dem übergeordneten JSON-Objekt ein Zahlenfeld und einen Wert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| fieldName | Zeichenfolge | Der Name des Nummernfelds. |
| encodedValue | Zeichenfolge | Der Wert des Zahlenfelds. |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}
JSONStreamingAPI – writeRaw(String text)
Fügt dem übergeordneten JSON-Objekt einen Rohwert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| text | Zeichenfolge | Rohtext, der dem übergeordneten JSON-Objekt hinzugefügt werden soll. |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
try {
var builder = new sn_ih.JSONStreamingBuilder().build();
builder.startObject()
.writeFieldName("firstName")
.writeString("John")
.writeFieldName("lastName")
.writeString("Smith")
.writeFieldName("filePath")
.writeRaw("C:\Users\profile\aboutme.html")
.writeNumberField("age","25")
.writeFieldName("address")
.startObject()
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray()
.startObject()
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject()
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getJSONString());
}
catch (err) {
gs.log("Exception: " + err);
}
finally {
builder.close();
}
JSONStreamingAPI – writeString(Zeichenfolgentext)
Fügt dem übergeordneten JSON-Objekt einen Zeichenfolgenwert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| text | Zeichenfolge | Der dem übergeordneten JSON-Objekt hinzuzufügende Zeichenfolgenwert. |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}
JSONStreamingAPI – writeStringField(String fieldName, Zeichenfolgenwert)
Fügt dem übergeordneten JSON-Objekt ein Zeichenfolgenfeld und einen Wert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| fieldName | Zeichenfolge | Der Name des Felds, das dem übergeordneten JSON-Objekt hinzugefügt werden soll. |
| Wert | Zeichenfolge | Der Wert des Felds. |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie Sie ein JSON-Objekt erstellen und es mit einem definierten Ablaufdatum in der Tabelle „Anhang“ [sys_attachment] speichern.
try {
var ttl = new GlideDateTime("2011-01-01 12:00:00");
var builder = new sn_ih.JSONStreamingBuilder()
.withAttachment() // Creates the JSON object in streaming mode within an attachment.
.expiresAt(ttl) // Sets an expiration date for the attachment.
.build(); // Creates the JSONStreamingAPI object.
builder.startObject() // Begins generating the JSON object.
.writeFieldName("firstName") // Adds a "firstName" field
.writeString("John") // Writes the value of the "firstName" field
.writeFieldName("lastName")
.writeString("Smith")
.writeNumberField("age","25") // Write a number field named "age" with value "25"
.writeFieldName("address")
.startObject() // Start a new object nested under the parent object
.writeStringField("streetAddress", "21 2nd Street")
.writeStringField("city", "Santa Clara")
.writeStringField("state", "CA")
.writeStringField("postalCode", "11111")
.endObject()
.writeFieldName("phoneNumber")
.startArray() // Start an array
.startObject() // Add the first object to the array
.writeFieldName("type")
.writeString("home")
.writeFieldName("number")
.writeString("212 555-1234")
.endObject()
.startObject() // Add another object to the array
.writeFieldName("type")
.writeString("fax")
.writeFieldName("number")
.writeString("646 555-4567")
.endObject()
.endArray()
.endObject()
gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
}
catch (err) {
gs.log(err);
}
finally {
builder.close();
}