rails重定向到’data:,’

在我的应用程序中,我将HTML输入保存为“页面”,如下所示:

def create @page = Page.new(page_params) @page.unique = loop do random_unique = SecureRandom.urlsafe_base64(4) break random_unique unless Page.where(unique: random_unique).exists? end @page.save redirect_to "/#{@page.unique}" end 

但是如果你在标签中包含function,它会说它呈现了页面,但事实上它没有返回任何内容,URL栏显示’data:,’

奇怪的是,如果您找到@ page.unique,然后访问它,例如localhost:3000 / SKkFrA,页面渲染就可以了。

有什么建议?

ps这是我正在使用的show方法:

 def show @page = Page.find_by(unique: params[:id]) render :text => @page.html end 

我在IRC上找到了答案。

这是一项安全function,新页面的HTML内容与Chrome阻止的提交表单的HTML内容相匹配。

这个问题是由OP提到的原因造成的 – “这是一个安全function,新页面的HTML内容与提交的表单的HTML内容相匹配,Chrome阻止了”。

我的解决方案是不再显示显示页面上的html数据。 我可以逃脱这个因为我的实例是一个后端应用程序,不需要html可见,只需要在数据库中。