“Can't verify CSRF token authenticity” when te

2019-07-16 05:52发布

I have a emberjs/rails application using devise for user authentication. I am building integration tests using qunit. I manually log into the app before I run tests. GET requests can be processed during tests, but POST requests fail. In particular, when making a POST request, I'm getting a "Can't verify CSRF token authenticity" error from devise. When I reload tests, I am logged out of app.

How do I get qunit to play nice with devise?

1条回答
做自己的国王
2楼-- · 2019-07-16 06:29

You need to add csrf_meta_tags to the index.html.erb that you are using to run your qunit tests and you also need to include jquery-ujs. Have a look at https://github.com/frodsan/qunit-rails

Alternatively, you can add this to your application_controller:

skip_before_filter :verify_authenticity_token if Rails.env.test?
查看更多
登录 后发表回答