0

Я использую ионный каркас и Угловой JS.Трек Начальный и конечный веб-запрос в ионном каркасе

Я не уверен, с чего начать отслеживать начало веб-запроса.

Для получения конечного запроса я пишу директиву с тегом onLoad.

здесь код

Directive.js

app.directive('iframeOnload', [function(){ 
    return { 
     scope: { 
      callBack: '&iframeOnload' 
     }, 
     link: function(scope, element, attrs){ 
      element.on('load', function(){ 
       return scope.callBack({DOMelement: this}); 
      }) 
     } 
    }}]); 

В HTML

<iframe id="webFrame" iframe-onload="iframeLoadedCallBack()" style="width:100%;height:650px;" ng-src='{{goToURL}}' ng-hide='hideIFrame'></iframe> 

В контроллер Функция обратного вызова

$scope.iframeLoadedCallBack = function() { 
     console.log('iframeLoadedCallback'); 
     // finished web request callback do something here 
    }; 

Я думаю, что есть что-то подобное для начала веб-запроса. И мне нужно отслеживать URL-адрес отправки.

Я разработчик iOS, и на самом деле я хотел бы сделать что-то подобное этому протоколу UIWebViewDelegate.

Большое спасибо

+0

оказалось, что перехватчики из $ httpProvider не улавливают запросы iframe, мой плохой, извините. – Rasalom

+0

Перехватчики захватывают весь запрос объекта $ http, включая u-route. Надеюсь, это поможет кому-то, кто использует альтернативный метод для загрузки внешней ссылки. –

+0

он также ловит все запросы для шаблона html, поэтому я думал, что это должно помочь с iframe. – Rasalom

ответ

0

Хотя он не может работать отлично, в iframeLoadedCallback

можно добавить следующий код

var webFrame = angular.element(document.getElementById('webFrame')); 
webFrame[0].contentDocument.onclick = $scope.clickOnIframe; 

и он будет отслеживать каждое событие щелчка внутри IFrame, отдых из этого будет жесткий код для отслеживания по ID, тегу, классу и т. д. внутри события.

Надеюсь, это поможет кому-то схожим вопросом.

0

Вы можете отслеживать все веб-запросы, используя NSURLProtocol. Это может помочь.