RESTResponseV2 – Bereichsbezogen, Global

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 5 Minuten Lesedauer
  • Die RESTResponseV2- API stellt Methoden bereit, mit denen Sie die von einer ausgehenden REST-Nachricht zurückgegebenen Daten in JavaScript-Code verwenden können.

    Ein RESTResponseV2-Objekt wird von den RESTMessageV2- Methoden execute () und executeAsync() zurückgegeben.

    Sie können diese API in bereichsbezogenen Anwendungen oder im globalen Bereich verwenden.

    Diese API wird im Namespace sn_ws ausgeführt.

    RESTResponseV2 – getAllHeaders()

    Gibt alle in der Antwort enthaltenen Header zurück, einschließlich doppelter Header.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 2. Ergebnisse
    Typ Beschreibung
    List<GlideHTTPHeader> Liste der in der Antwort enthaltenen Header. Jeder Header wird als GlideHTTPHeader-Objekt dargestellt, das den Header name und value enthält.

    Das folgende Codebeispiel zeigt, wie die REST-Tabellen-API aufgerufen wird, und listet dann alle in der Antwort gefundenen Header auf.

    var request = new sn_ws.RESTMessageV2();
    request.setEndpoint('http://<SN_Instance_host>/api/now/table/incident');
    request.setHttpMethod('GET');
    
    request.setBasicAuth('username', 'password');
    request.setRequestHeader("Accept", "application/json");
    var res = request.execute();
    if (res.getStatusCode() != 200) {
      gs.info('Bad Request');
    }
    
    var headers = res.getAllHeaders();
    for(var i in headers){
      gs.info(headers[i].name + ': ' + headers[i].value);
    }

    Antwortkopfzeilen

    X-Is-Logged-In: true
    X-Transaction-ID: e3003cb2db8c
    X-Total-Count: 66
    X-Content-Type-Options: nosniff
    Pragma: no-store,no-cache
    Cache-Control: no-cache,no-store,must-revalidate,max-age=-1
    Expires: 0
    Content-Type: application/json;charset=UTF-8
    Date: Fri, 14 May 2021 16:05:10 GMT
    Connection: close
    Server: ServiceNow
    JSESSIONID=5041870726ADADFAB2EE2BF8E7E01596; Path=/; HttpOnly; SameSite=None; Secure
    Set-Cookie: glide_user=; Max-Age=0; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; HttpOnly; SameSite=None; Secure
    Set-Cookie: glide_user_session=; Max-Age=0; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; HttpOnly; SameSite=None; Secure
    Set-Cookie: glide_user_route=glide.f1aa2015b3fa5fa8dfe567386cde8fd5; Max-Age=2147483647; Expires=Wed, 01-Jun-2089 19:19:17 GMT; Path=/; HttpOnly; SameSite=None; Secure
    Set-Cookie: glide_session_store=AF003CB2DB8CF8103DD9C39D139619C7; Max-Age=1800; Expires=Fri, 14-May-2021 16:35:10 GMT; Path=/; HttpOnly; SameSite=None; Secure
    Set-Cookie: BIGipServerpool_ddershem=2643023626.45630.0000; path=/; Httponly; Secure; SameSite=None; Secure
    Strict-Transport-Security: max-age=63072000; includeSubDomains

    RESTResponseV2: getBody()

    Ruft den Inhalt des REST-Antworttexts ab.

    Verwenden Sie diese Funktion, wenn Sie den Anforderungstext als Textinhalt abrufen möchten. Verwenden Sie diese Methode nicht, wenn Sie die Antwort als binären Anhang speichern. Wenn ein RESTMessageV2-Objekt die Funktion saveResponseBodyAsAttachment(...) aufgerufen hat, wird die Anwendung von getBody() auf das zugeordnete RESTResponseV2-Objekt zu einem Fehler führen. Wenn die ausgehende REST-Nachricht beim Speichern der Antwort als Anhang fehlschlägt, wenden Sie getErrorMessage() auf die Antwort an, um den Textinhalt abzurufen.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    Zeichenfolge REST-Antworttext.
    var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute();
    var responseBody = response.getBody();

    RESTResponseV2 – getCookies()

    Gibt alle in der Antwort enthaltenen Cookies zurück.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 6. Ergebnisse
    Typ Beschreibung
    Objekt Array von Zeichenfolgen, die Cookies darstellen. Iterieren Sie das Array, um Vorgänge für jedes Cookie auszuführen.

    Zeigen Sie einzelne Cookies aus der Antwort an.

    var cookies = response.getCookies();
    for (var i = 0; i < cookies.length; i++) {
      gs.info('cookie: ' + cookies.get(i));
    }
    Ausgabe:
    cookie: JSESSIONID=4135AA97A5D12DA22EF614AA2B0CAFD8.node20; Path=/; Secure; HttpOnly
    cookie: SABASESSIONID=370152970.36895.0000; path=/

    RESTResponseV2 – getErrorCode()

    Ruft den numerischen Fehlercode ab, wenn während der REST-Transaktion ein Fehler aufgetreten ist.

    Dieser Fehlercode ist spezifisch für Now Platform und ist kein HTTP-Fehlercode. Geben Sie diesen Fehlercode an, wenn Sie Unterstützung vom technischen Support von ServiceNow benötigen.

    Hinweis:
    Um den Inhalt der konkreten Fehlermeldung abzurufen, verwenden Sie die Methode getBody().
    Tabelle : 7. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 8. Ergebnisse
    Typ Beschreibung
    Nummer Numerischer Fehlercode, z. B. 1 für Socket-Zeitüberschreitung.
    var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute();
    var errorCode = response.getErrorCode();

    RESTResponseV2 – getErrorMessage()

    Ruft die Fehlermeldung ab, wenn während der REST-Transaktion ein Fehler aufgetreten ist.

    Tabelle : 9. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 10. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Fehlermeldung.
    var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute();
    var errorMsg = response.getErrorMessage();

    RESTResponseV2 – getHeader(String name)

    Ruft den Wert für einen angegebenen Header ab.

    Tabelle : 11. Parameter
    Name Typ Beschreibung
    Name Zeichenfolge Name des Headers, für den Sie den Wert abrufen möchten, z. B. „Set-Cookie“.
    Tabelle : 12. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Wert des angegebenen Headers.
    var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute();
    var headerVal = response.getHeader("Content-Type");

    RESTResponseV2 – getHeaders()

    Ruft alle in der REST-Antwort zurückgegebenen Header und die zugehörigen Werte ab.

    Hinweis:
    Wenn eine Kopfzeile mehr als einmal in der Antwort vorhanden ist, z. B. eine Set-Cookie-Kopfzeile, gibt diese Funktion nur die letzten der doppelten Kopfzeilen zurück. Um alle Kopfzeilen einschließlich Duplikate zurückzugeben, verwenden Sie die Funktion getAllHeaders().
    Tabelle : 13. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 14. Ergebnisse
    Typ Beschreibung
    Objekt Objekt, das den Namen jedes Headers dem zugehörigen Wert zuordnet.
    var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute();
    var headers = response.getHeaders();

    RESTResponseV2 – getQueryString()

    Ruft die vollständig aufgelöste Abfrage ab, die an den REST-Endpunkt gesendet wird.

    Diese Abfrage enthält die Endpunkt-URL sowie alle den Variablen in der REST-Nachricht zugewiesenen Werte. Verwenden Sie diese Methode nur für Antworten auf direkte Anforderungen. Diese Methode wird nicht für Anforderungen unterstützt, die asynchron gesendet werden, oder für Anforderungen, die über einen MID-Server gesendet werden.

    Tabelle : 15. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 16. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Vollständig aufgelöste Abfrage.
    var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute();
    var queryString = response.getQueryString();

    RESTResponseV2: getResponseAttachmentSysid()

    Ruft den sys_id-Wert des erstellten Anhangs aus dem Inhalt des Antworttextes ab.

    Wenn das mit dieser Antwort verknüpfte RESTMessageV2-Objekt die Funktion saveResponseBodyAsAttachment(...) aufgerufen hat, wenden Sie getResponseAttachmentSysid() an, um die sys_id des erstellten Anhangsdatensatzes abzurufen. Verwenden Sie diese Funktion, wenn Sie zusätzliche Operationen mit dem neuen Anhangsdatensatz ausführen möchten.

    Tabelle : 17. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 18. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Sys_id des neuen Anhangdatensatzes.

    RESTResponseV2 – getStatusCode()

    Ruft den vom REST-Anbieter zurückgegebenen numerischen HTTP-Statuscode ab.

    Tabelle : 19. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 20. Ergebnisse
    Typ Beschreibung
    Nummer Vom REST-Anbieter zurückgegebener numerischer Statuscode, z. B. 200 für eine erfolgreiche Antwort.
    var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute();
    var statusCode = response.getStatusCode();

    RESTResponseV2 – haveError()

    Gibt an, ob während der REST-Transaktion ein Fehler aufgetreten ist.

    Tabelle : 21. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 22. Ergebnisse
    Typ Beschreibung
    Boolean Gibt „true“ zurück, wenn ein Fehler aufgetreten ist, und „false“, wenn kein Fehler aufgetreten ist.
    var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute();
    var error = response.haveError();

    RESTResponseV2 – waitForResponse(Number timeoutSecs)

    Legen Sie fest, wie lange die Instanz auf eine Antwort des Webservice-Providers wartet.

    Diese Methode überschreibt die Eigenschaft „glide.rest.outbound.ecc_response.timeout“ für diese REST-Antwort.

    Tabelle : 23. Parameter
    Name Typ Beschreibung
    timeoutSecs Zahl Die Zeit in Sekunden, die auf diese Antwort gewartet wird.
    Tabelle : 24. Ergebnisse
    Typ Beschreibung
    void
    var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.executeAsync();
    response.waitForResponse(60);