2016-12-15 56 views
0

如何使用外部重定向将数据传递给我的角度项目? 我需要将mdToast消息从外部源传递到我的项目。我需要在所有控制器上拦截这些消息。目前,我正在使用查询字符串来实现此目的。我如何拦截runBlock中的查询字符串?我想以某种方式拦截它的所有路线。如何通过外部重定向在ui路由器中传递数据?

这里是如何,我发送的查询字符串:

$stateProvider 
.state('toastIntercept', { 
    url: '/toastIntercept?message', 
    templateUrl: 'views/redirect-by-intercept.html', 
    controller: 'redirectController' 
}); 

在进一步指出,这里就是我真正想要做的事:

我理解的讨论在这里灰心了,但我d真的很欣赏一些投入或一些资源或文章。我一直没能找到任何可信的。

我使用节点生成电子邮件给我的用户。用户可以通过该电子邮件采取一些行动,但最终落在我的静态角度项目上。什么才是实现这个目标的正确方法?

我能想到的两种可能的方式:

  1. 使用处理电子邮件重定向代理,执行的操作和使用举杯消息作为查询字符串以通知用户重定向到角项目他行动。
  2. 而不是代理服务器,使用其中一个路由处理电子邮件重定向我的静态角度项目本身。但是,这对我来说就像是反模式,因为静态项目不应该处理API级别的任务。

回答

1

如果我理解正确,我认为你可以通过添加一个拦截器来解决这个问题。

.config(function($httpProvider) { 
    //Register the interceptor via an anonymous factory  
    $httpProvider.interceptors.push(function($q, dependency1, dependency2) { 
      return { 
      'request': function(config) { 
       // same as above 
      }, 

      'response': function(response) { 
       // same as above 
      } 
      }; 
     });  
}); 

哟可以为请求和响应添加interceptos。对于interceptos 其他可能的值是:“requestError”和“responseError”

你也可以定义一个工厂,然后就

$httpProvider.interceptors.push('connectionFactoryInterceptor'); 
+0

你能否从网页上添加详细信息如下。如果这个环节过时了,答案会失去它的价值。谢谢。 – rapvelopment

相关问题