跨域发布到Sinatra

时间:2014-04-03 18:24:16

标签: html cross-domain sinatra

您好我在AWS S3上托管了一个静态网站,我希望能够通过页面上的"联系我们表单发送电子邮件"。是否可以让Sinatra服务器在不同的域上运行,让Heroku处理POST并发送电子邮件。

我有来自Sinatra的电子邮件部分,但每次我在本地发帖都会得到

WARN -- : attack prevented by Rack::Protection::HttpOrigin

我的表单是<form action="http://localhost:4567/contact" method="post">

如果我理解正确,这应该有效,因为我没有使用JavaScript,但我不确定。

此外,是否可以让我的静态网站自动将我重定向到索引页面,还是我需要从Sinatra那样做?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

是的,您可以在Sinatra的选项中指定原始白名单

configure do
  set :protection, :origin_whitelist => ['http://example.com']
end

http://example.com替换为您从中发送POST请求的网址。