Tôi đang gặp vấn đề với kiểm tra chức năng của mình.Yêu cầu thử nghiệm với Mã thông báo CSRF trong khung Play 2.5 (Scala)
Tôi có Play! Dự án 2,5 scala trong đó tôi thêm xác minh CSRF vào một số hình thức, kiểm tra các đơn vị scala kiểm tra liên quan đến thất bại, như mong đợi, với các lỗi:
java.lang.RuntimeException: No CSRF token present!
Tôi đang sử dụng FakeRequest với các tuyến đường để kiểm tra chúng:
val fakeRequest = FakeRequest(GET, s"/backOffice/login")
val Some(result) = route(app, fakeRequest)
Tôi làm cách nào để thêm mã thông báo CRSF để hiển thị thử nghiệm thành công một lần nữa?
(Cảm ơn bạn, và xin lỗi vì tiếng xấu, tôi không có nguồn gốc)
Bạn có thể ghi đè lên bạn 'applica tion.conf' và đặt một số tiêu đề để bỏ qua CSRF, như [ở đây] (https://www.playframework.com/documentation/2.5.x/ScalaCsrf#Plays-CSRF-protection). Hoặc xem câu trả lời [this] (http://stackoverflow.com/a/19849420/4496364). –
Xin chào, cảm ơn vì đã trả lời tôi! Tôi nên có trước rằng tôi cũng đang thử nghiệm các mẫu và rằng tôi đang thực hiện bảo vệ CSRF trên cơ sở mỗi hành động (Trường hợp thứ hai trong tài liệu, không phải là trường hợp đầu tiên có bộ lọc). Do đó, tôi không thể bỏ qua CSRF vì mẫu của tôi cần mã thông báo CSRF để có mặt trong FakeRequest, như trong liên kết thứ hai, mà tôi đã thử nghiệm (cũng nên đặt trước quá, xin lỗi), nhưng nó là để chơi 2.2 .1, và Intellij đang la mắng tôi "Không thể giải quyết ký hiệu SignedTokenProvider" Bạn có ý tưởng làm thế nào tôi có thể làm điều đó khi chơi 2.5? – Argurth
Tìm thấy một giải pháp và thực hiện một đặc điểm :) nhìn vào câu trả lời tôi thêm nếu bạn quan tâm ^^ – Argurth