2017-08-20 20 views
0

ポリマーカスタム要素を使用して以下を達成しようとしています。ドメイン名を使用してカスタムポリマー要素へのアクセスを制限する

  • [基本的に - 許可した場合]要求は、ドメイン名が一致する場合はカスタム要素
  • をレンダリングするために来ているところからドメイン名を検出し、ドメイン名ではないマッチが/許可されていない場合は、カスタム要素テンプレート
  • をレンダリングエラーページポリマーテンプレートにリダイレクト

私は他のサイトに提供しているカスタムHTML要素を作成しました。他のサイト/ドメインが自分のサイトで承認されている場合は、カスタムポリマー要素を表示する必要があります。そうでなければ、エラーテンプレートが表示されます。

これは可能ですか?

または誰かが自分のサイトにmy-custom-elementを追加した瞬間に、私は適所に置くことができます。 ここに明白なものがないかどうか教えてください。

また、以下のポリマー成分は、所望の結果を達成する能力も提供しない。例えば

<app-route> 
<app-route-converter> 

のは、誰かが自分のサイト/ HTMLページで私-カスタムelement.htmlを使用しているとしましょう。

my-custom-element.htmlが有効/承認済みドメインで使用されている場合。カスタムポリマー要素を提供する必要があります。 my-custom-element.htmlが無効な/許可されていないドメインで使用されている場合 - その場合、要素テンプレートのエラー部分が表示されます。

有効使用-場合:

  • xyz.com/
  • subdomain.xyz.com/
  • xyz.com/*

無効なユースケース:

  • anyotherdomain.com

注:現在、Oauthプロバイダを使用してドメイン所有者を認証しています。しかし、これらのOauthトークンは、それぞれのサイトから発信されたすべてのリクエストとともに渡されることはありません。私が妥当性を承認する方法は、「ドメインを使用しています」[自分のサイトに登録されているかどうか]

+0

あなたの質問をもう一度読んでください...多分 "リクエスタのドメインの詳細"とはどういう意味ですか?たぶん有効な時とそうでない時の例を教えてください。 – daKmoR

答えて

0

作成するカスタム要素の使用場所を制限したいのですか?

私はあなたの要素の中で、単純な

constructor() { 
    if (!this.location.href.match('https://stackoverflow.com') { 
    return false; 
    } 
    super(); 
} 

を行うことができます意味。

しかし、右クリックを防止するだけで保存すると、画像がコピーされないようになります。 (例えば全くない)。まだ目標があれば、ノンテクニシャンを防ぐだけですが、そのトリックをするかもしれません。

関連する問題