RESTAPIRequestBody - Champ d’application, Global
L’API RESTAPIRequestBody vous permet d’accéder au corps d’une demande REST API scriptée dans des scripts.
Le format d’un objet RESTAPIRequestBody peut être JSON ou XML, selon la valeur de l’en-tête du type de contenu de la requête.
Remarque :
Vous ne pouvez pas instancier des objets de ce type. Les objets de ce type sont créés automatiquement et ne sont accessibles que dans les scripts de ressources d’API REST scriptés.
Cette API s’exécute dans l’espace de noms sn_ws .
Exemple à entrée unique example-request-body au format JSON.
{
"name": "user1",
"id": 1234,
"roles": [
{
"name": "admin"
},
{
"name": "itil"
}
]
}Exemple à entrées multiples example-request-body au format JSON.
[{
"name": "user1",
"id": 1234,
"roles": [
{
"name": "admin"
},
{
"name": "itil"
}
]
},{
"name": "user2",
"id":9876,
"roles": [
{
"name":"admin"
}
]
}]RESTAPIRequestBody : données
Le contenu du corps de la demande.
Remarque :
Les services Web REST utilisent des données, un flux de données et une chaîne de données via un flux. Étant donné que les flux ne sont consommés qu’une seule fois, un seul peut être appelé. Par exemple, si vous appelez à la fois data et dataString, le deuxième appel renvoie vide.
| Nom | Type | Description |
|---|---|---|
| données | Objet ou tableau | Le contenu de la demande. Il peut s’agir d’un objet unique ou d’un tableau d’objets en fonction de la demande. |
var entry;
var id;
var requestBody = request.body;
var requestData = requestBody.data; //May be an array or a single object
if (requestData instanceof Array) {
entry = requestData[0].name; // 'user1'
id = requestData[0].id; // '1234'
} else {
entry = requestData.name; // 'user1'
id = requestData.id; // '1234'
}
RESTAPIRequestBody : dataStream
Le contenu du corps de la demande, sous forme de flux.
Remarque :
Les services Web REST utilisent des données, un flux de données et une chaîne de données via un flux. Étant donné que les flux ne sont consommés qu’une seule fois, un seul peut être appelé. Par exemple, si vous appelez à la fois data et dataString, le deuxième appel renvoie vide.
| Nom | Type | Description |
|---|---|---|
| Datastream | Objet | Le contenu du corps de la demande. Vous pouvez transmettre le flux à une API distincte, par exemple pour créer une pièce jointe à partir de la demande ou transférer la demande à un autre point de terminaison. |
var requestBody = request.body;
var requestStream = requestBody.dataStream;
RESTAPIRequestBody : dataString
Le contenu du corps de la demande, sous forme de chaîne.
Remarque :
Les services Web REST utilisent des données, un flux de données et une chaîne de données via un flux. Étant donné que les flux ne sont consommés qu’une seule fois, un seul peut être appelé. Par exemple, si vous appelez à la fois data et dataString, le deuxième appel renvoie vide.
| Nom | Type | Description |
|---|---|---|
| Chaîne de données | Chaîne | Le contenu du corps de la demande. |
var requestBody = request.body;
var requestString = requestBody.dataString;
RESTAPIRequestBody - hasNext()
Détermine s’il existe des entrées supplémentaires dans le corps de la demande.
Utilisez cette méthode avec la méthode nextEntry() pour itérer sur plusieurs entrées de corps de requête.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| booléen | Marqueur indiquant s’il existe des entrées supplémentaires dans le corps de la demande. Valeurs possibles :
|
var requestBody = request.body;
requestBody.hasNext(); // returns true if the request contains a single entry or multiple entries
requestBody. nextEntry(); // returns next available entry
//calling second time
requestBody.hasNext(); // returns false if the request contains a single entry, or true if the request contains multiple entries
RESTAPIRequestBody - nextEntry()
Récupérez une entrée du corps de la demande en tant qu’objet de script.
Utilisez cette méthode avec la méthode hasNext() pour itérer sur plusieurs entrées de corps de requête.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Objet | Une entrée unique du corps de la demande. |
var requestBody = request.body;
var requestEntry = requestBody.nextEntry(); // returns available entry if there is only one entry, or the first entry if there are multiple.
var name = requestEntry.name; // 'user1'
// Calling second time
requestEntry = requestBody.nextEntry(); // returns undefined if there is only one entry, or the second entry if there are multiple.
Cet exemple montre l’utilisation de hasNext() avec nextEntry().
var requestBody = request.body;
while(requestBody.hasNext()){
var entry = requestBody.nextEntry();
}