Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.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检索外部网站的内容(逐个元素)_Javascript_Angularjs - Fatal编程技术网

Javascript 如何使用AngularJS检索外部网站的内容(逐个元素)

Javascript 如何使用AngularJS检索外部网站的内容(逐个元素),javascript,angularjs,Javascript,Angularjs,我正在开发一个新的AngularJS应用程序。我希望有一些类似于JSOUP的功能,但在AngularJS上 问题: 如何获取外部网站的HTML代码 如何按“元素”(即:div、span等)拆分它们 我试图在app.js中使用$http.get: $scope.test = function(){ $http.get("https://www.civiweb.com/FR/offre/71087.aspx").success(function(data){ $scope

我正在开发一个新的AngularJS应用程序。我希望有一些类似于JSOUP的功能,但在AngularJS上

问题:

  • 如何获取外部网站的HTML代码
  • 如何按“元素”(即:div、span等)拆分它们
我试图在app.js中使用$http.get:

$scope.test = function(){
    $http.get("https://www.civiweb.com/FR/offre/71087.aspx").success(function(data){
        $scope.test = data;
    })
    .error(function(data){
      console.log("Error getting HTML : "+data);
    });

  }
index.html

<div>{{test}}</div>
<iframe ng-src="{{remoteUrl}}" > </iframe>
{{test}
不工作

我希望你能帮助我,谢谢你这个糟糕的主意

但是如果你必须

注意:这仅用于开发目的,我的解决方案不会也不应该在除您之外的其他机器上工作

我将首先在iframe元素中注入HTML

然后遍历iframe HTML树以获取内容

index.html

<div>{{test}}</div>
<iframe ng-src="{{remoteUrl}}" > </iframe>
有关详细信息,请参阅

现在剩下的就是等待加载iframe内容,然后遍历它

继续app.js

var init = function($scope, $sce){
  $scope.remoteUrl = $sce.trustAsResourceUrl("http://example.com");
}
myFrame= document.getElementsByTagName('iframe');
myFrame.load = function(e){
  myDiv = myFrame.document.getElementById("ContenuPrincipal_BlocA1_m_oCity");
  alert(myDiv.innerHTML);
 }
现在,要使其工作,必须覆盖同一来源策略。
(一种方法是在主机文件中写入您自己的行…或使用chrome标志)

将不起作用。您需要激活CORS或JSONP(仅GET)才能通过跨源接收数据。请添加您的完整视图。{{test}}是不够的。谢谢,我将使用JSOUPOk在Android上创建一个本机应用。谢谢,然后我将创建一个本机应用。通过在Android上使用公共JSOUP:)