リンク先ページでのエクスペリエンスを制御するパラメーターを使用して、ユーザーにサイトへのリンクを提供できるようにする必要がありますが、もちろん、Moqui ではパラメーターを GET トランザクションとして渡すことはできません。それを回避するにはどのような方法がありますか? メール、SMS、音声で送信できるものである必要があります。
1 に答える
エラー メッセージは、実行中の状況を正確に把握するのに役立ちますが、XSRF 攻撃を軽減するための制約のように思えます。
この状況のエラー メッセージは、問題と推奨される解決策を説明しています。この元のリンクを、非表示の入力フィールドを持つフォームに変更してください。」
URL パラメーターを画面に渡して、表示用にデータを準備するコードで使用することはできますが、入力を処理するコードのトランジションには渡せません。解決策は、リンクまたはボタンを含む非表示のフォームを使用してフォームを送信することです (リンクまたはボタンとして、または必要に応じてスタイルを設定できます)。これは、URL パラメーターを含む単純なハイパーリンクよりも HTML に近いものですが、それほど多くはなく、Moqui 自体のさまざまな場所に例があります。
XML スクリーン/フォームを使用している場合は、link 要素を使用して @link-type 属性を「hidden-form」または「hidden-form-link」に設定してこれを行うことができます (これは、代わりにハイパーリンク スタイルのウィジェットを使用します)。ボタンスタイルのもの)。@link-type 属性が "auto" (デフォルト) に設定されている場合、リンクがアクションを伴うトランジションに移動すると、非表示フォームが自動的に使用されます。
プレーンな HTML では、考えられるアプローチの 1 つが次のようになります。
<button type="submit" form="UserGroupMemberList_removeLink_0">Remove</button>
<form method="post" action=".../EditUserGroups/removeGroup" name="UserGroupMemberList_removeLink_0">
<input type="hidden" name="partyId" value="EX_JOHN_DOE">
<input type="hidden" name="userGroupId" value="ADMIN">
</form>
ボタン要素は送信するフォームを参照するため、HTML ファイルの任意の場所に配置でき、フォーム要素は最後または邪魔にならない場所に配置できます (許可されていないネストされたフォームの問題を回避するため)。 HTMLで)。