巧妙的解决csrf_token问题

无论是在django中,还是在ruby on rails中,都提供了一种基于token验证的机制,可以理解为防跨站机制。这种机制呆了的好处不必多说,但是会带来一种麻烦,就是在使用ajax的时候,会导致提交失败,比如在django中会提示:

 

CSRF verification failed. Request aborted.(django)
Can't verify CSRF token authenticity.(rails)

 

 这时候大家多数都会在ajax的对应ajax中加入

from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def ajax_method:
   django
skip_before_filter :verify_authenticity_token (rails)

 其实还有另外一个方法,这里只说在django中的应用,因为在rails里面没有测试过:

 

  

 

 然后在用ajax的地方,加入:

   data: {datas:‘ datas’,csrfmiddlewaretoken: $("#csrfmiddlewaretoken").val()},

这样就可以了。

 

 

 

 

 

你可能感兴趣的:(python,ruby,on,rails,web)