execute-http

\![execute,http-get / post]の改良です。

きっかけ

  • おぞーにが「execute,http-getが失敗したかどうか確実に知りたい!」と言ったから。
  • ゆねねーがLingrにご執心なのでいっそLingrゴーストを作れる基盤を整備したくなったから。

新仕様

  • \![execute,http-get,URL,オプション,オプション,オプション...]
  • \![execute,http-post,URL,オプション,オプション,オプション...]

後ろにくっつくオプションの仕様は以下の通り。

--async=ASYNC ID

これを指定すると、取得完了までスクリプトの実行を停止する従来の仕様ではなく、取得完了を待たずに続行して、完了時にイベントが通知されます。
=の後に指定するASYNC IDは、イベントを識別するためのIDです。要するにReferenceに直接ここで指定した文字列が入ります。

GET SHIORI/3.0
ID: OnExecuteHTTPComplete / OnExecuteHTTPFailure
Reference0: post/get
Reference1: ASYNC IDで指定した文字列がそのまま入る
Reference2: URLそのまま
Reference3: 取得したファイルのフルパス
Reference4: 取得結果コード ( timeout,fileio,200,204,403,404... )
Reference5: Set-Cookieでクッキーを受け取ったらその文字列(次回すぐ使えるよう加工済)

ASYNC IDにOnではじまる名前を指定すると、その名前のイベントがOnExecuteHTTPCompleteの代わりに発生します。その場合、失敗時には名前+Failureのイベントが発生します。例:OnHogeHoge->OnHogeHogeFailure

--cookie=クッキーデータ

Cookieヘッダに設定するクッキーのデータを設定します。 通常、前回のOnExecuteHTTPCompleteのReference5をそのまま指定します。

--file=ファイル名

取得するデータを保存するファイル名を指定します。
保存される場所は (ゴースト)/ghost/master/var/(ファイル名) 固定です。その他の場所には書き込めません。

--nodescript

オンラインを示す表示と、ダウンロード状況を示す表示を出しません。
long-pollをしたい場合など、オンライン表示が常に出ていると邪魔な場合に使います。

--param=パラメータ

GET/POSTのパラメータ(URLの?より後、あるいはPOSTするデータ)を=以降に指定します。
複数並べると、間を改行(CR+LF)区切りでつなげます。
URLエンコードしていない場合(=エンコード対象の文字が含まれる場合)は、以下のparam-charsetの指定に従ってエンコードされますが、&と=は無視されます。

--param-charset=文字コード

上記パラメータの文字コードを指定します。標準はUTF-8です。
SHIORIなどと同じ文字コードが使えます(例:Shift_JIS・EUC-JP)

--timeout=秒数

通信するサーバの応答を待つ秒数を指定します(ダウンロードにかかる時間の制限ではありません)。
300秒=5分以上を指定することはできません。

その他

上記に合致しなければ--param=と同等とみなします(互換動作)


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2011-11-25 (金) 12:41:41