RESTAPIResponseStream : avec champ d’application, global

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 1 minute de lecture
  • 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 .

    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.

    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( ).

    Remarque :

    Il incombe à l’auteur du script d’obtenir le flux à partir d’un service tiers.

    Tableau 1. Paramètres
    Nom Type Description
    ruisseau Objet Une pièce jointe ou un flux de réponses provenant d’un service tiers.
    Tableau 2. Renvoie
    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( ).

    Tableau 3. Paramètres
    Nom Type Description
    données Chaîne La chaîne à ajouter aux données de la réponse.
    Tableau 4. Renvoie
    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));