2016-05-04 3 views
0

Ich habe eine Postboten-Sammlung mit zwei Anfragen.Verwendung von postman.setNextRequest(), um Anfragekörper vor dem Senden zu füllen

  • POST /make-request
  • GET /prepare-request

Der Körper /make-request in ihm wie so eine Variable hat.

{ 
    "key": {{key}} 
} 

Die Tests Reiter des /prepare-request nimmt es Körperreaktion JSON und setzt Sätze data.key als globale Variable key in Postbote so.

var data = JSON.parse(responseBody); 
postman.setGlobalVariable("key", data.key); 

Nun, wenn ich Send die Anfragen in dieser Reihenfolge

  1. GET /prepare-request
  2. POST /make-request

Der Körper /make-request mit der Antwort von /prepare-request bevölkert

Jetzt ...

Was möchte ich haben möchte, ist ein Pre-request Script in /make-request die /prepare-request läuft vor und werden automatisch in den Körper von /make-request jedes Mal, bevor es ausgeführt wird. Ich habe das versucht, aber es funktioniert nicht.

postman.setNextRequest("/prepare-request") 

Gedanken? Ist dies die korrekte Verwendung von .setNextRequest()? Gibt es trotzdem ich kann diese Funktionalität unseres Postboten und newman bekommen.

Antwort

0

Speziell für newman müssen Sie .setNextRequest() nicht verwenden, solange Sie Ihre Anforderungen in der Sammlung bestellen, damit sie die Daten abrufen und die env-Variablen in der richtigen Reihenfolge festlegen, damit die Anforderung funktioniert.

  1. GET /prepare-request
  2. POST /make-request
0

postman.setNextRequest ("/ prepare-request") sieht aus wie es ist nicht ganz richtig. Der Parameter, den Sie angeben möchten (wie ich es verstehe), ist der NAME des Anrufs, den Sie machen möchten, nicht die URL. Also ... das ist wahrscheinlich eher wie: postman.setNextRequest ("Prepare Request"); Verwenden Sie den Namen, den Sie der API in POSTMAN gegeben haben.

Verwandte Themen