5

I am using the $http.get('url') to get the content present in the 'url' present. The html in 'url' is as follows

<html>
<head></head>
<body>
    <pre style = "word-wrap: break-word; white-space: pre-wrap;">
        <!-- content is present here -->
    </pre>
</body>
</html>

When I make a $http.get to this url, I get some data and the required content

GET /TYPE=abvd HTTP 1.1
content required

.0.1234.123 Safari /123.12
Referer: //url of the webpage calling this function
Accept-Encoding: 
...............

How do I get rid of this extra information and receive only the content? (I know we can just parse the response but is there a better way of doing it? )

EDIT: The data response I got was seen in google chrome, when I run the same script in IE10, I get the only the "html content" as desired. Why does this difference occur and how do I make process it?

2
  • 2
    those are response headers which will come with all http requests... you can modify your server response to change them... but they are harmless and you really don't have to worry about them Commented Jun 17, 2015 at 6:43
  • i might not be able to modify the server response. Commented Jun 17, 2015 at 8:18

1 Answer 1

3

$http.get returns an HttpPromise, and from it you can get the underlying data like so:

$http.get('url').then(function(response) {
    html = response.data;
});

To get even more useful data, you can expand this like so:

$http.get('url').then(
   // success handler
   function(response) {
       var data = response.data,
           status = response.status,
           header = response.header,
           config = response.config;
   }, 
   // error handler
   function(response) {
       var data = response.data,
           status = response.status,
           header = response.header,
           config = response.config;
   });

Demo: JSBin

Edit: If there are still HTML issues, you can look into $sce.trustAsHtml(html) or PhantomJS with references:

Sign up to request clarification or add additional context in comments.

8 Comments

when i print response.data on the console, i get "undefined"
How about console.log(response.status);?
Demo with console.log outputs to screen: jsbin.com/memeva/1/embed?js,console,output
the url I am getting the data from is not in a json format, is it why this profblem is getting created?
Nope. This URL I'm using allows cross-origin requests specifically for demos. If the URL you use does not allow cross-origin requests and is on a different domain, then no data will be returned at all. Try my demo with your url and see what console outputs you get.
|

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.