How to read the responses from external API? | Adobe Higher Education
Skip to main content
Level 3
November 19, 2020
해결됨

How to read the responses from external API?

  • November 19, 2020
  • 1 답변
  • 3145 조회

Hi Team,

 

Below is the code 

 

var http = new HttpClientRequest("https://secure.mcommons.com/api/profile_update?phone_number=1234567890");
http.header["UserName"] = 'username';
http.header["Password"] = 'password';
http.header["Authorization"] = "Basic YXJjc3VwcG9ydEBzcGVyaWRpYW4uY29tOlNwZXJpZGlhbjIwMjE=";

http.header["Content-Type"] = "application/json";

http.method = "GET"
http.execute();

var r = http.response;
logInfo(r.body);

 

below is the response i get

 

<?xml version="1.0" encoding="UTF-8"?> <response success="true"> <message id="11787545911" type="generic" status="sent"> <phone_number>1234567890</phone_number> <profile>123456</profile> <body>Hello</body> <sent_at>2020-11-18 12:08:16 UTC</sent_at> <message_template_id/> <mms>false</mms> <multipart>false</multipart> <campaign id="12345" active="true"> <name> Testing</name> </campaign> </message> </response>

 

Here i need to read success, messageid, type, status, phone_number etc...

How Can we achieve it?

 

Thanks,

Sachin

이 주제는 답변이 닫혔습니다.
최고의 답변: Darren_Bowers

Hi @sachincs1991 - you can parse the response as a DOMDocument and get the Elements and Attributes from there in the Javascript

e.g.

... var doc = DOMDocument.fromXMLString(r.body); var responseNode = doc.getElementsByTagName("response")[0]; var success = responseNode.getAttribute("success"); ...

 Cheers

Darren

1 답변

Darren_Bowers
Level 9
November 19, 2020

Hi @sachincs1991 - you can parse the response as a DOMDocument and get the Elements and Attributes from there in the Javascript

e.g.

... var doc = DOMDocument.fromXMLString(r.body); var responseNode = doc.getElementsByTagName("response")[0]; var success = responseNode.getAttribute("success"); ...

 Cheers

Darren

sachincs1991작성자
Level 3
November 19, 2020

Hi @darren_bowers ,

 

Thank you very much for the reply.

 

I am able to read the success, but not the message id, status and others.

 

below is the code

 

var doc = DOMDocument.fromXMLString(resp.body);
var responseNode = doc.getElementsByTagName("response")[0];
var success = responseNode.getAttribute("success");
logInfo(success);
var responseNode1 = doc.getElementsByTagName("message")[0];
var id = responseNode1.getAttribute("id");
logInfo(id);

 

Error:

 

11/19/2020 12:27:21 AM SCR-160012 Javascript&colon; error while evaluating script 'DEVWKF5797/js6'. js6
11/19/2020 12:27:21 AM JST-310000 Error while compiling script 'DEVWKF5797/js6' line 26: responseNode1 is undefined. js6