Example url: https://abc.xyz.com/m# HTML Response:
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
.
.
</head>
<body class="abc">
.
.
.
<script>xab.start('{\"first\":\"123xyz\",\"second\":\"abc123\",\"third"..;</script>
</div>
</body>
</html>
In the above mentioned response i want to extract the value of the parameter second '("second\":\"abc123\")' from the response and pass it on to the next request.
It would be simpler if the response is JSON, but in the case this is HTML response.
I was able to do this on JMeter using Regex but having hard time to do it on Postman.
Thanks!
If you already have the regex and just need the response as a string in order to apply it, you can get it in the tests tab of Postman by using the following command: const responseText = pm. response. text(); const matches = responseText.
The Postman Body tab gives you several tools to help you understand the response quickly. You can view the body in one of four views: Pretty, Raw, Preview, and Visualize. in the results pane. You can also place your cursor in the response and select ⌘+F or Ctrl+F.
You could look at using Cheerio to get the values, it's one of the built in modules within the Postman native application.
You could add something like this example, to extract the value from the HTML.
This is getting the value from the title
html tag, of the jsonplaceholder page, then setting it as an environment
variable:
const $ = cheerio.load(pm.response.text())
pm.test("it should return a title", () => {
pm.expect($('title').text()).to.not.be.empty
})
pm.environment.set('title', $('title').text())
I'm sure you could use this to get the value you need from your example.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With