Maison  >  Questions et réponses  >  le corps du texte

ruby - Can't verify CSRF token authenticity

问题:

同样的接口请求,使用get工作正常。
使用post请求提示:
Can't verify CSRF token authenticity

临时的解决方法

在controller 中跳过验证

skip_before_action :verify_authenticity_token, :only => ["your_update_action"]

http://stackoverflow.com/questions/19390389/using-curl-to-access-backend-api-of-rails-app-that-implements-devise

后续疑问

如何通过post请求发送token验证?

高洛峰高洛峰2709 Il y a quelques jours951

répondre à tous(3)je répondrai

  • 阿神

    阿神2017-04-24 16:01:32

    Get ne vérifie pas le csrf. Votre csrf_token est-il placé dans le corps de la requête ?

    répondre
    0
  • phpcn_u1582

    phpcn_u15822017-04-24 16:01:32

    Généralement, la méthode <%= csrf_meta_tags %> doit être appelée dans le fichier de mise en page et introduite dans js jquery_ujs

    .

    Par exemple

    application.erb

    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="utf-8">
      <title>you title</title>
      .....
      <%= csrf_meta_tags %>
    </head>
    <body>
    </body>
    </html>
    

    application.js

    #= require jquery_ujs

    Gemfile

    gem 'rails-jquery'

    répondre
    0
  • 高洛峰

    高洛峰2017-04-24 16:01:32

    Qu'il soit inclus dans le formulaire ou ajouté au corps de la requête ajax
    D'après votre description, il devrait être que ce paramètre csrf ne soit pas ajouté au corps de la requête de publication

    répondre
    0
  • Annulerrépondre