Проблема кодирования параметров с рельсами - PullRequest
0 голосов
/ 19 сентября 2011

У меня странная проблема с опубликованными параметрами в Rails 3.1.0.

Это происходит только в производстве, а не в разработке.

Я подтвердил, что при создании сообщения параметры передаются на сервер как:

utf8 =% E2% 9C% 93 & authenticity_token = jOn16Uw3oUBPQfX02nt1IN8muZf150nTt24Ic4JgPvY% 3D и предупреждение% 5Btitle% 5D = HTTP% 3A% 2F% 2Fwww & оповещения% 5Bheadline% 5D =% 26headline

Что выглядит следующим образом при декодировании:

utf8 = ✓ & authenticity_token = jOn16Uw3oUBPQfX02nt1IN8muZf150nTt24Ic4JgPvY = & предупреждение [название] = http://www&alert[headline]=&headline

Однако на стороне сервера параметры принимаются как:

{"utf8"=>"✓", "authenticity_token"=>"jOn16Uw3oUBPQfX02nt1IN8muZf150nTt24Ic4JgPvY=", 
"alert"=>{"status"=>"published", 
          "title"=>"http://www", "headline"=>"&headline"}

Очевидно, я не хочу хранить закодированные значения.

Я использую Rails 3.1.0, Unicorn и Nginx. Я также пробовал это на Rails 3.1.0, пассажирский, стек Apache и имел ту же проблему. В обоих случаях я использую 1.9.2p290.

Буду признателен за любой совет. Есть ли новые производственные настройки, о которых я не знаю?

1 Ответ

0 голосов
/ 22 сентября 2011

Оказывается, это проблема с определенной версией Sinatra.https://github.com/sinatra/sinatra/issues/360

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...