2016-12-15 7 views
0

外部リダイレクトを使用して角度プロジェクトにデータを渡すにはどうすればよいですか? mdToastメッセージを外部ソースからプロジェクトに渡す必要があります。私はすべてのコントローラでこれらのメッセージを傍受する必要があります。現在、私はこれを達成するためにクエリ文字列を使用しています。 runBlockでこのクエリ文字列を傍受するにはどうすればよいですか?私は何とかすべてのルートでそれを傍受したい。外部リダイレクトを介してui-routerにデータを渡すにはどうすればよいですか?

ここで私は、クエリ文字列送信しています方法は次のとおりです。ここで私が実際にやろうとしています何、さらにノートで

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

を:

私は議論はここで推奨され理解が、私は」 dはこれに関するいくつかのインプットやいくつかのリソースや記事を本当に感謝しています。私は信頼できるものを見つけることができませんでした。

ノードを使用してユーザーに電子メールを生成します。ユーザーはそのメールで何らかの行動を取ることができますが、最終的に私の静的な角度のあるプロジェクトに着陸します。これを達成する正しい方法は何でしょうか?私は2つの方法を考えることができ

:Eメールのリダイレクトを扱っプロキシを使用した

  1. 、アクションを実行し、彼についてユーザーに通知するために、クエリ文字列としてトーストメッセージを使用して、角度のプロジェクトにリダイレクトアクション。
  2. プロキシの代わりに、ルートの1つを使用して静的角度プロジェクト自体の電子メールリダイレクトを処理します。静的プロジェクトは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ため 他の可能な値は次のとおりです。「requestError」と「responseError」

あなたはまた、工場を定義することができ、その後、次の

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

あなたがWebページから詳細を追加することができます。リンクが古くなったら、その答えは価値を失うだろう。ありがとう。 – rapvelopment

関連する問題