Rails API应用程序将忽略Accept-Language标头值

时间:2019-04-17 18:57:33

标签: ruby-on-rails ruby ruby-on-rails-3

这一切都在控制器级别,即ApplicationController。

这是一个非常奇怪的问题,可能只在我身上发生。

基本上,正如标题所述,Rails忽略了Accept-Language标头值。 但是明白这一点,订购显然很重要。

所以如果我卷曲

curl -X POST \
 http://localhost:1234/signin \
 -H 'Accept-Language: de' \
 -H 'content-type: application/json' \
 -H 'Test-Header: Test' \

我可以使用Accept-Language很好地访问request.headers['Accept-Language']值。

但是,如果我更改订单

curl -X POST \
 http://localhost:1234/signin \
 -H 'content-type: application/json' \
 -H 'Accept-Language: de' \
 -H 'Test-Header: Test' \

request.headers['Accept-Language']返回nil。

关于为什么会发生这种情况的任何想法?我在Rails 3.2.22.1上

我已经完成的事情:

  • 检查了Rack :: Cors中间件
  • 拔出头发
  • 已验证的标头同时在curl和网络上发送,还通过Postman验证了我的发现
  • 全局搜索以查看它是否在任何地方都被覆盖(我什么都找不到)
  • 其他标头值也可以。我没有测试所有这些,但是测试了自定义和其他几个。

谢谢!

0 个答案:

没有答案