2015年3月1日日曜日

Django + Polymer : Ajax 時の CRFS 対策 (403 エラーへの対応)

ここ に書いたように url に View を登録するときに csrf_exempt を使うことで CSRF 対策を切って 403 エラーを回避していましたが、Polymer 使用時には Django-enabled Polymer core-ajax variant を使うことで簡単に対応できる事がわかりました。
  1. リンク先の django-ajax を django-ajax.html という名前で保存する
  2. Polymer 内で core-ajax を使っていた部分を django-ajax に置き換える
    1. インポートを忘れずに
  3. {% csrf_token %} を html に含めてレンダリングする
django-ajax は core-ajax を継承していて、ajax 時のヘッダに csrf トークンを追加してくれる、という寸法のようです。

先人の知恵というのはありがたいものですね。リンク先に感謝です。

0 件のコメント:

コメントを投稿