Django 使用 ajax 遇到的关键问题

  1. 如果是post方法,不要忘记加上csrf_token
    Django doc中关于ajax如何加入csrf_token
  2. 注意url和302重定向的问题。
    因为http在重定向后是不保留request里的post data的。所以当发现自己post data为空的时候,就可以用firebug之类的检查下是不是产生了302重定向。
    一般重定向的问题有 url/url 之间的重定向。
    今天自己遇到的问题比较少见,就是zh-cn的重定向。因为使用了多语言的设置,所以Django会帮我把所有的url重定向到以zh-cn开头的url。
    当在form里使用{% url %}这个标识符的时候,模板系统会自动加上zh-cn,所以不会重定向。但是当在ajax里手动填写url的时候,如果忘记加上zh-cn就会产生一个重定向,丢失data。
    原文作者:kamushin233
    原文地址: https://segmentfault.com/a/1190000000590535
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞