Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取AngularJS中指定的url的html内容_Javascript_Html_Angularjs - Fatal编程技术网

Javascript 获取AngularJS中指定的url的html内容

Javascript 获取AngularJS中指定的url的html内容,javascript,html,angularjs,Javascript,Html,Angularjs,我正在使用$http.get('url')获取当前“url”中的内容。“url”中的html如下所示 <html> <head></head> <body> <pre style = "word-wrap: break-word; white-space: pre-wrap;"> <!-- content is present here --> </pre> </body&g

我正在使用$http.get('url')获取当前“url”中的内容。“url”中的html如下所示

<html>
<head></head>
<body>
    <pre style = "word-wrap: break-word; white-space: pre-wrap;">
        <!-- content is present here -->
    </pre>
</body>
</html>
我如何摆脱这些额外的信息而只接收内容?(我知道我们可以解析响应,但有更好的方法吗?)

编辑:
我得到的数据响应是在谷歌chrome中看到的,当我在IE10中运行相同的脚本时,我只得到所需的“html内容”。为什么会出现这种差异?我如何处理它?

$http.get
返回一个,从中可以获得如下基本数据:

$http.get('url').then(function(response) {
    html = response.data;
});
要获得更有用的数据,可以这样展开:

$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;
   });
演示:

编辑:如果仍然存在HTML问题,您可以查看
$sce.trustAsHtml(HTML)
或带有参考的PhantomJS:


这些是响应头,将随所有http请求一起提供。。。您可以修改服务器响应以更改它们。。。但是它们是无害的,你真的不必担心它们。我可能无法修改服务器响应。当我在控制台上打印response.data时,我会得到“undefined”,那么
console.log(response.status)呢?带有console.log的演示输出到屏幕:我从中获取数据的url不是json格式,这就是创建此问题的原因吗?不。我使用的这个URL允许专门用于演示的跨源请求。如果您使用的URL不允许跨源请求,并且位于不同的域上,那么将不会返回任何数据。用你的url试试我的演示,看看你得到了什么控制台输出。
$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;
   });