我正在Sinatra写一个网络服务。我使用中间件来添加简单,愚蠢的CORS支持(只需在所有请求上发送Access-Control-Allow-Origin=*
垃圾邮件)。我知道有一个更强大支持的宝石,但这可以实现我想要的3行代码。除了...
除非@app.call env
引发异常,否则我永远不会有机会修改标题。异常气泡一直到Rack::ShowExceptions
,我无法找到将额外标题注入其响应的方法。
我是否必须停止使用Rack::ShowExceptions
?我需要进行mokeypatch吗?我应该将更多中间件放在堆栈中,以便捕获非CORS感知的错误消息并添加它们吗?我不确定我知道怎么做。
答案 0 :(得分:0)
原来我猜对了:我只需要确保use DumbCorsSupport
在use Rack::ShowExceptions
之前。但值得注意的是,至少在我使用的浏览器中,如果您的500页没有提供与其他服务相同的CORS标头,那么您的客户端错误回调不会被触发!