我正在 Sinatra 中编写一个博客应用程序。现在我有两个页面:
- '/'列出我所有的帖子
- '/write'写一篇新文章
我在'/write'上有一个输入 'textarea' 和一个提交按钮。
写完帖子并单击提交按钮后,我使用下面的代码重定向到页面“/”:
post '/write' do
# some codes for storing the new post
redirect '/', 303
end
这是我的问题:
在'/write'上,如果我在 'textarea' 中写一些普通文本并提交它们,一切正常;
但是,如果我在“textarea”中编写任何 javascript 并提交,Chrome/Safari 不会重定向到页面“/”,而是给我一个空白的“about:blank”页面。
我使用 Chrome 开发者工具跟踪网络请求,发现没有请求发生。但如果我使用 Firefox 访问我的应用程序,一切正常。firebug 显示 2 个请求发生:'/write'上的 POST(303) 和 '/ '上的 GET(200) 。
所以我不知道我的应用程序是否有任何问题,或者 Webkit 的一些反 XSS 策略阻止了浏览器加载我的“/”页面?(这个页面应该显示我新提交的帖子,这是一些 JS 代码。我相信这些 JS 代码会导致我的 'about:blank' 问题)。
如果您能给我任何提示,我将不胜感激,并为我糟糕的英语感到抱歉。