【Javascript, PHP】CakePHP2.4のセキュリティコンポーネントをAjaxによるPOSTデータで通過させる。

メモ。

var data = {};
$(this).find('input[type!="submit"]').each(function() {
	data[$(this).attr('name')] = $(this).val();
});

上記のようにして特定フォームの全インプット要素(Submit属性は除く)を拾ってポストすればセキュリティコンポーネントを通過することが出来る。
しかし、セキュリティトークンは一度の処理のみ有効なので連続してポストした場合、2回目以降が403で弾かれてしまうので注意されたし。

また上記の拾い方をした場合、コントローラー内からは通常通り「$this->request->data」で受け取ることができるので非常に便利。