ruby-on-rails - rails引擎ckeditor图像上传导致异常
问题描述
我创建了一个包含 CKEditor 的引擎。
在我的虚拟应用程序中,form.cktext_area 工作正常并且渲染良好,但是当我尝试上传图像时,出现以下异常:
Ckeditor::PicturesController#create 中的 ActionController::InvalidAuthenticityToken
这是因为我在引擎中使用 CKEditor 进而导致一些身份验证/保护问题吗?
谢谢
解决方案
您必须在请求中发送 csrf 令牌,简单的方法是在每个 ajax 请求中添加 csrf 令牌:
document.addEventListener('turbolinks:load', function () {
var csrfToken = document.querySelector('meta[name="csrf-token"]').getAttribute('content')
if (csrfToken) {
var obj = XMLHttpRequest.prototype.open;
XMLHttpRequest.prototype.open = function(){
var res = obj.apply(this, arguments);
this.setRequestHeader('X-CSRF-Token', csrfToken);
return res;
}
}
})
推荐阅读
- machine-learning - PyTorch 增强
- javascript - 用 mapState 和 mapMutations 替换计算的 getter/setter
- sql - Check multiple case expressions result at once
- postgresql - 如果约束不存在则添加唯一的检查一行?
- c++ - 在提升声明中定义默认参数
- angular - Angular 9 反转元素滚动方向
- c# - ASP.NET Core“找不到此本地主机页面”
- java - JTable 不显示值
- spring - Grails 4 热插拔/重新编译
- ubuntu - 如何下载网站 (http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/) 和所有子目录的内容