JSONStreamingAPI – Umfang
Erstellen Sie eine große JSON-Streamingnutzlast, die in einer REST- oder SOAP-Anforderung verwendet werden kann, um Massendaten an eine Drittanbieter-API zu senden. Sie können die Nutzlast auch als JSON-Zeichenfolge für eine nicht-Streaming-Option erstellen.
Verwenden Sie diese Methoden in Workflow-Studio Skriptschritt mit sn_ih Namespace-Bezeichner. Sie können diese API beispielsweise verwenden, um eine JSON-Nutzlast in zu erstellen Workflow-Studio Skriptschritt und übergeben Sie den zurückgegebenen Wert an den REST-Schritt, um die Anforderung an einen Drittparteiservice zu senden. Weitere Informationen finden Sie unter Workflow-Studio Skriptschritt .
Sie können diese API nur innerhalb von verwenden Workflow-Studio Umgebung.
Um diese Klasse zu verwenden, müssen Sie aufrufen Build() Methode in JSONStreamingBuilder Klasse, um ein JSONStreamingAPI-Objekt zurückzugeben. Weitere Informationen finden Sie unter JSONStreamingBuilder – Umfang.
API-Aufrufreihenfolge
Generieren Sie JSON-Nutzlasten mit diesen APIs in der folgenden Reihenfolge:
- JSONStreamingBuilder : Erstellt ein Generatorobjekt
- Verwenden Sie diese Methoden in der folgenden Reihenfolge, um ein Generatorobjekt zu erstellen:
- JSONStreamingBuilder() : Instanziiert das JSONStreamingBuilder-Objekt.
- Mit Anhang() : 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.
- ExpresAt() : Optional. Legt einen Zeitpunkt fest, zu dem der Anhang abläuft. Muss auch anrufen Mit Anhang() Methode.
- Build() : Gibt ein JSONStreamingAPI-Objekt zurück.
- JSONStreamingAPI : Erstellt die JSON-Nutzlast
- Verwenden Sie diese Methoden in der folgenden Reihenfolge, um die JSON-Nutzlast zu erstellen:
- StartObject() : Erstellt das übergeordnete JSON-Objekt.
- Methoden zum Generieren der JSON-Schlüssel-Wert-Paare, z. B. WriteFieldName() , WriteString() , Und WriteNumberField() .
- Endobjekt () : Schließt das übergeordnete JSON-Objekt.
- GetJSONString() Oder GetAttachmentId() : Gibt die von Ihnen erstellte JSON-Zeichenfolge oder Anhang-ID zurück.
- Schließen () : 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 – close()
Schließt das JSONStreamingAPI-Objekt. Diese Methode muss aufgerufen werden, um den Stream nach dem Erstellen eines JSON-Objekts zu schließen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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 hübsche Druckvorgänge.
Bevor Sie diese Methode aufrufen, müssen Sie zuerst anrufen EnablePrettyPrint() Zum Hinzufügen einer JSON-Formatierung zu einem bestimmten Abschnitt.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel fügt dem eine hübsche Druckformatierung hinzu Adresse Objekt.
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 hübsche Druckformatierung hinzu.
Verwenden Sie zum Deaktivieren der hübschen Druckformatierung in einem JSON-Objektabschnitt DeaktivierenPrettyPrint() Methode.
| 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 im übergeordneten JSON-Objekt.
Rufen Sie an StartArray() Methode zum Öffnen des Arrays.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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 an StartObject() Methode zum Öffnen des Objekts.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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 Anhangsdatensatzes in der Tabelle „Streaming-Anhänge“ [Streaming_attachment] zurück, die die JSON-Nutzlast enthält.
Sie müssen anrufen Mit Anhang() Methode in JSONStreamingBuilder Klasse zum Speichern der JSON-Nutzlast als Anhang, bevor diese Methode aufgerufen wird. Weitere Informationen finden Sie unter JSONStreamingBuilder – Umfang.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | SYS_ID des Anhangsdatensatzes in der Tabelle „Streaming-Anhänge“ [Streaming_attachment], der die JSON-Nutzlast enthält. |
Dieses Beispiel zeigt, wie ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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 auf Mit Anhang() Methode in JSONStreamingBuilder Klasse. Weitere Informationen finden Sie unter JSONStreamingBuilder – Umfang.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Enthält das JSON-Objekt, das mit erstellt wurde JSONStreamingAPI . |
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.
Schließen Sie ein EndArray() Methode zum Schließen des Arrays.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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 StartArray() Und EndArray() Methoden zum Öffnen und Schließen des Arrays.
| 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 Endobjekt () Methode zum Schließen des Objekts.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| JSONStreamingAPI | Streaming-JSON-Objekt, das zum Erstellen der Nutzlast verwendet wird. |
Dieses Beispiel zeigt, wie ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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 (boolescher Status)
Fügt dem übergeordneten JSON-Objekt einen booleschen Wert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Status | Boolean | Der boolesche Wert, der dem übergeordneten JSON-Objekt hinzugefügt werden soll. 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(String fieldName, boolescher Wert)
Fügt dem übergeordneten JSON-Objekt ein boolesches Feld und einen booleschen Wert hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| fieldName | Zeichenfolge | Der Name des Felds, das dem übergeordneten JSON-Objekt hinzugefügt werden soll. |
| Wert | Boolean | Der boolesche Wert, der dem übergeordneten JSON-Objekt hinzugefügt werden soll. 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(Zeichenfolgenname)
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 ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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 Null-Felds. |
| 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(String fieldName, String 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 ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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(Zeichenfolgentext)
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 Zeichenfolgenwert, 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 ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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 ein JSON-Objekt erstellt und in der Tabelle „Anhang“ [sys_attachment] mit einem definierten Ablaufdatum gespeichert wird.
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();
}