简体   繁体   中英

There was an error in evaluating the Pre-request Script

I'm trying to access the response of my POST request in Postman via Post Request Script.

I added this 2 lines, under Pre-request Script

let response = pm.response.json(); 
console.log('JSON Response: ',response );

Then, I opened up my Postman console, before hit Send to make my POST request

I kept getting

There was an error in evaluating the Pre-request Script: TypeError: Cannot read property 'json' of undefined

Do I need to enable anything on Postman?

Pre-request scripts are ran before the request is sent. You do not have a response yet.

Try putting your script under the Tests tab, which is ran after a response is received.

In my case, there was a script that was screwing up my request. If you get the postman collection from someone else, check this and try to fix it. (in my case I don't need it so I deleted it)

在此处输入图片说明

You can try setting an environment variable, get it and parse it, I was created a POST requests to make a login and get a token to each request.

const echoPostRequest = {
  url: pm.environment.get("url_login"),
  method: 'POST',
  header: 'Content-Type: application/json',
  body: {
    mode: 'raw',
    raw: JSON.stringify({ email: pm.environment.get("user"),password: pm.environment.get("password") })
  }
};
pm.sendRequest(echoPostRequest, function (err, res) {
    console.log(err ? err : res.json());
    pm.environment.set("login_response", res.json());
    pm.environment.set("bearer_token", pm.environment.get("login_response").bearer_token);
});

was helping a friend and he had tried to make an adjustment to all requests in the collection.

I found in the documentation, how to remove

https://learning.postman.com/docs/writing-scripts/pre-request-scripts/

Please Make Sure That You Cleared Text Area Of PRE-REQUEST & TESTS TAB

By Clearing Text I Solved This Issue

need a hand, how to solving it

var localTime = moment().format ("hhmmss")
pm.environment.set("localTime"), localTime;

var localDate = moment().format ("MMDD");
pm.environment.set("localDate"), localDate);

var captureDate = moment().format ("MMDD")
pm environment.set("captureDate"), captureDate);

I just try hit the postman and got notif There was an error in evaluating the Pre-request Script: SyntaxError: Unexpected token ')'. thx

Check if you SSL was turn off. If isn't, turn off.

Settings >> General >> SSL Certificate Verification

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM