Einzelnen Beitrag anzeigen

jsp

Registriert seit: 9. Aug 2003
50 Beiträge
 
#1

REST request / Type not found

  Alt 7. Okt 2019, 09:43
Guten Morgen!
Irgendwas übersehe ich da, oder mache grundsätzlich was falsch.

ich rufe einen REST-Request mit 'user' und 'passwort' auf, und erhalte folgendes Resultat:

Code:
{
    "payload": {
        "sessiontoken": "85955b90-b134-4c24-822a-28b23c12c57a"
    },
    "error": null,
    "retcode": 0
}
Scheint soweit zu passen. Der Token wird für alle anderen Requests als Authorisierung gebraucht.
Wenn ich nun aber folgende Funktion aufrufe (aus dem Manual):
Code:
      contextDataPositionsForChapter(
        UUID sessionID, /* Session ID */
        Integer chapter, /* Kapitel */
        String language, /* Sprache */
        Integer version, /* Version */
        Integer revision /* Kapitel-Stand */
      ): NPKPositionEcoData
Delphi-Quellcode:
function TfrmECO.contextDataPositionsForChapter(sessionID, chapter, version, revision : string): boolean;
var
  jsValue : TJSONValue;
  jsRequest : TJSONObject;
  jsDataStr : string;

  jsStr : string;

  obj, data : TJSONObject;
  retcode : Integer;
  httpRes : TStream;

begin
  Result := True;

  RESTClient1.BaseURL := 'https://contextdata.crb.ch/ctxdata/rest/1.0/published/eco/contextDataPositionsForChapter';
  RESTClient1.Params.Clear;
  RESTRequest1.ClearBody;

  jsRequest := TJSONObject.Create();

  jsRequest.AddPair(TJSONPair.Create('sessionID', TJSONString.Create(sessionID)));
  jsRequest.AddPair(TJSONPair.Create('chapter', TJSONNumber.Create(chapter)));
  jsRequest.AddPair(TJSONPair.Create('language', 'de'));
  jsRequest.AddPair(TJSONPair.Create('version', TJSONNumber.Create(version)));
  jsRequest.AddPair(TJSONPair.Create('revision', TJSONNumber.Create(revision)));

  RESTRequest1.AddBody(jsRequest);
  jsRequest.Free();

  RESTRequest1.Execute;
  jsValue:=RESTResponse1.JSONValue;

  obj := RESTResponse1.JSONValue as TJSONObject;

  jsStr := PrettyJSON(jsValue.ToString);
  SynEdit1.BeginUpdate;
  SynEdit1.Text := jsStr;
  SynEdit1.EndUpdate;
end;
Bekomme ich folgendes Resultat:
Code:
{
    "payload": null,
    "error": "Type not found",
    "retcode": 100
}
retcode 100
Fehler: der Kontextdaten-Typ wurde nicht gefunden bzw.
entspricht keinem Webservice-Pfad.

Hat jemand eine Idee was ich hier falsch mache?

Gruss, Jörn
  Mit Zitat antworten Zitat