サーバー側のフォーム検証用のテストを作成しようとしていますが、Forbidden エラーが発生し続けます。これは2段階のプロセスである必要があるようです。ステップ 1、フォームから CSRF 値を取得します。ステップ 2、CSRF 値を使用してフォーム ハンドラーに投稿します。ただし、どのように投稿しようとしても、禁止されたエラーが発生します。
-- 完全なテスト: https://github.com/socketwiz/swblog/blob/master/test/contact.js#L57-L100
したがって、次の行を変更してみました: https://github.com/socketwiz/swblog/blob/master/test/contact.js#L85
.send({name: 'foo', 'X-CSRF-Token': token})
.set('X-CSRF-Token', token)
.set('Cookie', ['X-CSRF-Token=' + token])
しかし、私が試みたものはどれも CSRF 要件を満たすようには見えません。単純なことのように見えても、試行錯誤すればするほど複雑になります。たぶん、私はこれについてすべて間違っています。何か案は?