Action と Call
Action<S, A> は、シグナルが S のページから呼ぶサーバーのエンドポイントで、引数 A を受け取ります。
Action
const として宣言し、同じ値をページとルーターの両方で使います。
| 項目 | 概要 |
|---|---|
Action::post | POST path で配信するアクション |
Action::get | 何も変更しない読み取りに使う、GET path で配信するアクション |
call | 引数を取らないこのアクションの呼び出し |
call_with | 引数 args を渡す、このアクションの呼び出し |
path | アクションを配信するパス(Base を除く) |
under | ページからの呼び出しがパスの前に base を付ける、base の下の同じアクション |
method | アクションを配信するメソッド |
Method | Action を配信する HTTP メソッド |
Call
Call は Stmt を書ける場所ならどこでも使えます。
| 項目 | 概要 |
|---|---|
indicator | リクエストの応答を待つあいだ flag を真にし、終わったら偽にします。 |
error | 呼び出しが失敗すると message をエラーの文言にし、送るときに "" にします。 |
latest | 同じアクションへの latest の呼び出しで、まだ終わっていない前のものを取り消します。 |
on_error | この呼び出しが失敗したとき、handle が作る文を実行します。 |
on_success | サーバーの応答が届き、そのパッチを適用し終えたら next を実行します。 |
then | この呼び出しを送り、応答を待たずに next を実行します。 |
StreamAction と StreamCall
差分のストリームは RouterExt::stream で GET に配信し、その呼び出しだけが再接続できます。