version 6.5
SEND HTTP REDIRECT (url{; *})
| 引数 | 型 | 説明 | |
| url | 文字列 | 新しいURL | |
| * | * | 指定されている場合 = URLは翻訳されない | |
| 省略されている場合 = URLは翻訳される |
説明
SEND HTTP REDIRECT コマンドを使用すると、URLをほかのURLへ転送することができます。
引数 url は、リクエストをリダイレクトすることができる新しいURLを格納しています。この引数がファイルへのurlである場合、SEND HTTP REDIRECT ("/MyPage.HTM") などのファイルへの参照を保持していなければなりません。
コンテキストモードでこのコマンドが呼び出されると、実行された直後に、Webプロセスが終了します。このコマンドは同じメソッド内にあるデータを送るコマンド (SEND HTML FILE、SEND HTML BLOB など) より優先されます。
また、このコマンドを使用すると、リクエストを他のWebサーバへリダイレクトすることも可能です。
4DはURLの特殊文字を自動的にエンコードします。 *を渡すと、4Dはそれらを翻訳しません。
例題
このコマンドを使用して、4D上でスタティックページを用いてカスタムリクエストを実行します。以下のエレメントをスタティックなHTMLページに設定するとします。
Note: POSTアクション "/4dcgi/rech" は、テキストエリアとOKとCancelボタンに連携されています。
非コンテキストモードを管理するOn Web Connectionデータベースメソッド部分 (またはサブルーチン) では、以下のコードを挿入します。
Case of
: ($1="/4dcgi/rech") `When 4D receives this URL
`OKボタンが使用され、 ‘name’ フィールドにValueがある場合
If ((bOK="OK") & (name # ""))
`同じメソッド内のはるか下に置かれた検索コードを
`実行するためにURLを変更する
SEND HTTP REDIRECT("/4dcgi/rech?"+name)
Else
`そうでなければ、始めのページに戻る
SEND HTTP REDIRECT("/page1.htm")
End if
...
: ($1="/4dcgi/rech?@") `If the URL has been redirected
... `検索コードをここに入れる
End case