1

Sencha のフロントエンド アプリを作成し、そのバックエンドは PHP/Joomla で作成しました。Sencha JS アプリから送信されたデータは、PHP と Joomla フレームワークを使用して検証および保存されます。

Sencha JS アプリで CSRF トークンを作成し、それを PHP/Joomla コードで検証するにはどうすればよいですか?

4

1 に答える 1

0

Joomla フォームは、新しい投稿ごとにチェックされるトークンで保護されています。トークンは、フォームに挿入する単なる隠しフィールドです。

echo JHtml::_('form.token');

これは、コントローラーで次のようなものでチェックされます

JSession::checkToken('post') or jexit(JText::_('JInvalid_Token'));

これは、標準の get/post インタラクションではうまく機能します。しかし、Ajax を使用する場合は、リクエストが行われるたびに新しいトークンを取得する方法が必要になります。

その後、コントローラーは戻る必要があります

JSession::getFormToken() 

次の呼び出しにそれを含める必要があります。

注意: ajax 応答がキャッシュされていないことを確認してください。最初のコード スニペットで挿入された非表示のトークン入力がページ キャッシュによって適切に処理されている間は、他の発生を更新することに注意する必要があります。

于 2013-05-14T07:21:20.683 に答える