you*_*end 5 ruby-on-rails ruby-on-rails-4
我有一个 rails 应用程序,cors 设置在 before_filter 上:
def cors
headers['Access-Control-Allow-Origin'] = '*'
headers['Access-Control-Allow-Headers'] = 'X-AUTH-TOKEN, X-API-VERSION, X-Requested-With, Content-Type, Accept, Origin'
headers['Access-Control-Allow-Methods'] = 'POST, GET, PUT, DELETE, OPTIONS'
headers['Access-Control-Max-Age'] = "1728000"
end
before_filter :cors
Run Code Online (Sandbox Code Playgroud)
这工作得很好。然后,如果在路由上抛出错误,则标头将被覆盖。
def index
object.undefined_method() // undefined method `undefined_method'
end
Run Code Online (Sandbox Code Playgroud)
响应头:
Keep-Alive
Content-Length ?16399
Content-Type ?text/html; charset=utf-8
Date ?Thu, 08 May 2014 18:51:20 GMT
Server ?WEBrick/1.3.1 (Ruby/2.0.0/2013-11-22)
X-Request-Id ?6ace3d4e-4367-452c-a924-c4c490f207de
X-Runtime ?0.130761
Run Code Online (Sandbox Code Playgroud)
即使 before_filter 运行,那些标题也不存在。虽然 500 错误不应该存在,但我希望前端开发人员能够给我一个比“我做了这个但 CORS 不起作用”更具描述性的错误。我希望 CORS 出现在结果中。
谢谢。
| 归档时间: |
|
| 查看次数: |
563 次 |
| 最近记录: |