プロセルピナ
Top Internet
Mail
Private
Proxy
Capture
Device
Download Config
and
Words
Online
Help
Online
Home
[BACK]
Top > FileDownload > Macro > Ex: Command > AntiAd > ReqHdrEdit

 

  Ex:AntiAdコマンド
  httpリクエストヘッダ編集 (ReqHdrEdit)

Macro Top | Variables | Constants | Commands | Ex-Commands  


 

【はじめに】 httpリクエストヘッダ編集とは


「httpリクエストヘッダ編集」は、 Private Proxy(Service部) がネット側にhttpリクエストを送信する際、 そのヘッダ部を HTTPリクエスト単位で 任意に編集する機能です。

Ex:AntiAdコマンドの ReqHdrEdit-addHostモード を使用してPrivate Proxyにターゲットのホストと、 Callbackマクロを登録します。
この登録は、 Ex:AntiAdコマンドの ReqHdrEdit-removeHostモード を使用して解除することができます。

現在の登録状況は Ex:AntiAdコマンドの ReqHdrEdit-dumpモード で参照することができます。

httpリクエストヘッダ編集の詳細
 

書式


  Ex:AntiAd: (Parameters)  

Parameters
mode= : string, コマンドモード
  ReqHdrEdit-addHost : ターゲットのホスト、Callbackマクロを登録
  ReqHdrEdit-removeHost : 登録解除
  ReqHdrEdit-dump : 登録情報をファイルにダンプ

ReqHdrEdit-addHostモードでのパラメータ
  O:waitId= : string, Ex:InputForm.Waitコマンドの waitId= に指定する文字列変数。
  O:result= : string, コマンド実行結果 (OK: -or- NG:~)
  host= : string, ターゲットホスト
  CallbackMacro= : string, Callbackマクロファイルのフルパス
  table.save : flag, 登録情報を保存 (Optional)

ReqHdrEdit-removeHostモードでのパラメータ
  O:waitId= : string, Ex:InputForm.Waitコマンドの waitId= に指定する文字列変数。
  O:result= : string, コマンド実行結果 (OK: -or- NG:~)
  host= : string, ターゲットホスト
  table.save : flag, 登録情報を保存 (Optional)

ReqHdrEdit-dumpモードでのパラメータ
  O:waitId= : string, Ex:InputForm.Waitコマンドの waitId= に指定する文字列変数。
  O:result= : string, コマンド実行結果 (OK: -or- NG:~)
  dir= : string, 出力先フォルダ
  table.save : flag, 登録情報を保存 (Optional)

 

ReqHdrEdit-addHostモード (登録)


ReqHdrEdit-addHostモードは、 host=パラメータ で指定したホストへのhttpリクエストに対し、そのhttpリクエストを送信する直前に ヘッダを編集できるようにするコマンドです。
ヘッダの編集はマクロ(Callbackマクロ)で行うほか、 手動で編集するやり方(テキストエディタなどを使う) も選べます。

CallbackマクロはReqHdrEdit-addHostモードのコマンドパラメータ CallbackMacro= で指定します。 指定はマクロファイルのフルパスで行います。
編集完了待ちの通知を兼ねていますので、 手動で編集するときもCallbackマクロは指定しなければなりません。
View部は、Private Proxyから編集するべきヘッダがあることを通知されると このマクロを起動します。

host= の指定は、完全一致の他に、  .  (半角ドット記号) から開始することで、後方一致で指定することができます。
例えば、
  host=".example.co.jp"
と指定した場合、
  video.example.co.jp
  mp4.example.co.jp
  aaa.bbb.example.co.jp
  aaa.bbb.ccc.example.co.jp
のようなホストが対象になります (注: .example.co.jp の指定では example.co.jp は対象外です)。

O:result=パラメータで、 コマンド実行結果を設定する文字列変数を指定します。 正しく実行できた場合は OK: の文字列(3文字)が、それ以外は NG: で開始される文字列が設定されます。
OK: が設定されている場合は、コマンドが正常終了し、Private Proxyに 登録依頼が行われています (Private Proxyでの処理が正しく行えたかは、後述の Ex:InputForm.Waitコマンド で確認します)。

O:waitId=パラメータで、 応答待ちIDを設定する文字列変数を指定します。 コマンドが正常終了すると、応答待ちIDが設定されます。
このコマンド実行後は Ex:InputForm.Waitコマンド を実行し、 Private Proxyからの応答を取得する必要がありますが、 このときに O:waitId=パラメータ で受け取った値が必要になります。
これは、Ex:InputForm.WaitコマンドwaitId=パラメータ に、 Ex:AntiAdコマンドReqHdrEdit-addHostモード の O:waitId=パラメータ で指定した文字列変数をそのまま指定すればOKです (具体例はサンプルを参照)。

Private Proxyで正しく受付られたかどうかは Ex:InputForm.WaitコマンドO:result= で取得できた文字列値で判定します。
正しく受付られた場合は OK: の文字列(3文字)が、それ以外は NG: で開始される文字列が設定されます。

コマンドで table.save を指定したときは、コマンド終了時の登録状況をファイルに保存します。
保存された内容は次のService部起動時に自動的に読み込まれます。
table.save を指定しないときでも、 Service部は終了するときに登録情報を自動的に保存し、起動されたときにそれを読み込むので、 一度登録した内容は(ReqHdrEdit-removeHostモードで)解除するまで有効です。 ただし、WindowsのシャットダウンでService部を終了させたときは、保存されないときがあります。

コマンドの例は httpリクエストヘッダ編集の詳細 のサンプルを参照してください。

 

ReqHdrEdit-removeHostモード (解除)


ReqHdrEdit-addHostモードで登録したhttpリクエストヘッダ編集は、 ReqHdrEdit-removeHostモードで解除できます。


コマンド例 (具体的な使用例は 「httpリクエストヘッダ編集」の詳細 を参照)

 

ReqHdrEdit-dumpモード (登録状況参照)


登録情報を参照するには ReqHdrEdit-dumpモード を使用します。
Private Proxyは、ReqHdrEdit-dumpモードのコマンドをうけつけると dir=パラメータ で指定したフォルダに、登録状況を書き出します。




【コピペで確認】 上記のサンプルコードは メモ帳モードで開いたテキストフォームにコピー&ペーストして、 テストモード実行で 動作確認することができます。

[BACK]
プロセルピナ