Raylar için yerleşik CSRF önleme, yaptığımız bazı otomatik yükleme testleri için bazı sorunlara yol açıyor ve işlem süresi boyunca kapatmak istiyorum. Bunu nasıl yaparım?Bir raylar uygulamasında CSRF korumasını nasıl kapatırım?
19
A
cevap
26
Basit soruları net cevaplarla seviyorum.
#I go in application.rb
self.allow_forgery_protection = false
yalnızca çevre dosyaları (besbelli, daha sonra yerine self
Application
dokunmadan olacak) birine o taşıyabilirsiniz test etmek için bunu yapmak istiyorum.
#I still go in application.rb
self.allow_forgery_protection = false unless ENV["RAILS_ENV"] == "production"
Detaylar için here bakınız: Ayrıca böyle bir şey yazabiliriz. (Işlemek günlüklerden distile edilmiş 2 yaşındaki blog yayınları, temel özelliklerden belgelerine sahip Sürekli Rails'in harika gelenek.) Raylar 3'te
3
, = app/controllers/application_controller.rb
veya 'self.allow_forgery_protection içinde
protect_from_forgery
komutunu kaldırmak ENV ["RAILS_ENV"] == "üretim" 'kısa – gunniçin aşağıdaki hatayı aldım: - /home/vipin8169/.rvm/gems/ruby-2.2.1/gems/railties-4.2.0/lib/rails/railtie .rb: 196: 'method_missing': tanımsız yöntem 'allow_forgery_protection = 'için FertilityApp :: Uygulama: Sınıf (NoMethodError) ' – vipin8169