RESTAPIResponseStream : avec champ d’application, global
L’API RESTAPIResponseStream fournit des méthodes qui vous permettent d’écrire directement dans le flux de réponse de l’API REST scripté.
Utilisez les méthodes RESTAPIResponseStream pour créer des API de service Web dans la fonctionnalité API REST scriptée .
Cette API s’exécute dans l’espace de noms sn_ws .
RESTAPIResponseStream : writeStream(flux d’objets)
Écrivez un flux d’entrée dans le flux de réponse.
Vous devez définir le type de contenu et le code d’état avant d’appeler la méthode writeStream() ou la réponse échouera. Vous ne pouvez pas modifier ces valeurs après avoir appelé la méthode writeStream( ).
Il incombe à l’auteur du script d’obtenir le flux à partir d’un service tiers.
| Nom | Type | Description |
|---|---|---|
| ruisseau | Objet | Une pièce jointe ou un flux de réponses provenant d’un service tiers. |
| Type | Description |
|---|---|
| nul |
L’exemple suivant concerne les applications incluses dans le périmètre :
(function process(/*RESTAPIRequest*/ request, /*RESTAPIResponse*/ response) {
response.setContentType('application/json');
response.setStatus(200);
var gsa = new GlideSysAttachment();
var attachmentStream = new gsa.getContentStream(<sys_id of attachment>);
var writer = response.getStreamWriter();
writer.writeStream(attachmentStream);
})(request, response);
L’exemple suivant concerne les applications globales :
(function process(/*RESTAPIRequest*/ request, /*RESTAPIResponse*/ response) {
response.setContentType('application/json');
response.setStatus(200);
var attachmentStream = new GlideSysAttachmentInputStream(<sys_id of attachment>);
var writer = response.getStreamWriter();
writer.writeStream(attachmentStream);
})(request, response);
RESTAPIResponseStream : writeString(données de chaîne)
Écrivez les données de chaîne dans le flux de réponse.
Vous devez définir le type de contenu et le code d’état avant d’appeler la méthode writeString() ou la réponse échouera. Vous ne pouvez pas modifier ces valeurs après avoir appelé la méthode writeString( ).
| Nom | Type | Description |
|---|---|---|
| données | Chaîne | La chaîne à ajouter aux données de la réponse. |
| Type | Description |
|---|---|
| nul |
response.setContentType('application/json');
response.setStatus(200);
var writer = response.getStreamWriter();
var body ={
name:user1,
id: 1234,
roles: [
{
name: admin
},
{
name: itil
}
]
}
writer.writeString("{'name':'user','id':'1234'}");
writer.writeString(JSON.stringify(body));