4D v16.3

WA SET URL FILTERS

ホーム

 
4D v16.3
WA SET URL FILTERS

WA SET URL FILTERS 


 

WA SET URL FILTERS ( {* ;} object ; filtersArr ; allowDenyArr ) 
引数   説明
演算子 in 指定時, objectはオブジェクト名 (文字列) 省略時, objectは変数
object  フォームオブジェクト in オブジェクト名 (* 指定時) または 変数 (* 省略時)
filtersArr  文字配列 in フィルタ配列
allowDenyArr  ブール配列 in 許可-拒否配列

説明   

WA SET URL FILTERS コマンドは、*object 引数で指定したWebエリアで、1 つ以上のフィルタを設定するために使用します。

リクエストされたページをロードする前に、4D はフィルタのリストを照会し、ターゲットのURL に接続が許可されているかどうかを調べます。URLの判定はfiltersArrallowDenyArr 配列の内容に基づき行われます。

リクエストされたURL が許可されない場合、ページはロードされず、On URL Filtering フォームイベントが生成されます。

filtersArrallowDenyArr 配列は同期されていなければなりません。

  • filtersArr 配列のそれぞれの要素には、フィルタするURL が含まれます。1 つ以上の文字を表すワイルドカードとして * を使用できます。
  • allowDenyArr 配列のそれぞれ対応する要素には、URL を許可 (True) するか拒否 (False) するかを示すブール値が含まれます。

同じURL が許可および拒否されているなど、設定レベルで矛盾がある場合、最後の設定が考慮されます。

フィルタを無効にするには、コマンドを呼び出す際に空の配列を渡すか、配列の最後の要素で、filtersArr 配列に"*" を、allowDenyArr 配列にTrueを渡します。

コマンドが実行されると、フィルタはWeb エリアのプロパティとなります。filtersArrallowDenyArr が削除されたり初期化されたりしても、コマンドが再実行されるまでフィルタは有効です。エリアで有効になっているフィルタを取得するには、WA GET URL FILTERS コマンドを使用しなければなりません。

重要: このコマンドによって実行されるURLフィルタリングは、WA OPEN URL コマンドと"javascript:"で始まるURLを除き、ページの主URLを変更するリクエストであればユーザーからのリクエストであってもjavascriptコードであっても4Dコードであっても、どのようなリクエストに対しても適用されます。

.org, .net そして .fr Web サイトへのアクセスを禁止したい場合:

 ARRAY TEXT($filters;0)
 ARRAY BOOLEAN($AllowDeny;0)
 
 APPEND TO ARRAY($filters;"*.org")
 APPEND TO ARRAY($AllowDeny;False)
 APPEND TO ARRAY($filters;"*.net")
 APPEND TO ARRAY($AllowDeny;False)
 APPEND TO ARRAY($filters;"*.fr")
 APPEND TO ARRAY($AllowDeny;False)
 WA SET URL FILTERS(MyWArea;$filters;$AllowDeny)

日本のサイト以外へのアクセスを禁止したい場合(.jp):

 ARRAY TEXT($filters;0)
 ARRAY BOOLEAN($AllowDeny;0)
 
 APPEND TO ARRAY($filters;"*") `Select all
 APPEND TO ARRAY($AllowDeny;False`Deny all
 APPEND TO ARRAY($filters;"www.*.jp") `Select *.jp
 APPEND TO ARRAY($AllowDeny;True`Allow
 WA SET URL FILTERS(MyWArea;$filters;$AllowDeny)

4D のWeb サイトにのみアクセスを許可する場合 (.com, .fr, .es, etc.):

 ARRAY TEXT($filters;0)
 ARRAY BOOLEAN($AllowDeny;0)
 
 APPEND TO ARRAY($filters;"*") `Select all
 APPEND TO ARRAY($AllowDeny;False`Deny all
 APPEND TO ARRAY($filters;"www.4D.*") `Select 4d.fr, 4d.com...
 APPEND TO ARRAY($AllowDeny;True`Allow
 WA SET URL FILTERS(MyWArea;$filters;$AllowDeny)

ローカルのドキュメントにのみアクセスを許可 (C://doc フォルダ内):

 ARRAY TEXT($filters;0)
 ARRAY BOOLEAN($AllowDeny;0)
 
 APPEND TO ARRAY($filters;"*") `Select all
 APPEND TO ARRAY($AllowDeny;False`Deny all
 APPEND TO ARRAY($filters;"file://C:/doc/*")
  `Select the path file:// allowed
 APPEND TO ARRAY($AllowDeny;True`Allow
 WA SET URL FILTERS(MyWArea;$filters;$AllowDeny)

特定のキーワードを含むサイトを除いて許可する場合:

 ARRAY TEXT($filters;0)
 ARRAY BOOLEAN($AllowDeny;0)
 
 APPEND TO ARRAY($filters;"*")
 APPEND TO ARRAY($AllowDeny;True`Allow all
 APPEND TO ARRAY($filters;"*elcaro*") `Deny all that contain elcaro
 APPEND TO ARRAY($AllowDeny;False)
 WA SET URL FILTERS(MyWArea;$filters;$AllowDeny)

特定のIP アドレスへのアクセスを拒否する場合:

 ARRAY TEXT($filters;0)
 ARRAY BOOLEAN($AllowDeny;0)
 APPEND TO ARRAY($filters;"*") `Select all
 
 APPEND TO ARRAY($AllowDeny;True`Allow all
 APPEND TO ARRAY($filters;86.83.*")  `Select IP addresses beginning with 86.83.
 APPEND TO ARRAY($AllowDeny;False`Deny
 APPEND TO ARRAY($filters;86.1*")  `Select IP addresses beginning with 86.1 (86.10, 86.135 etc.)
 APPEND TO ARRAY($AllowDeny;False`Deny
 WA SET URL FILTERS(MyWArea;$filters;$AllowDeny)
  `(Note that the IP address of a domain may vary).



参照 

WA GET URL FILTERS
WA SET EXTERNAL LINKS FILTERS

 
プロパティ 

プロダクト: 4D
テーマ: Webエリア
番号: 1030

 
履歴 

初出: 4D v11 SQL Release 2

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)