ruby-on-rails – Rails 3查询字符串
发布时间:2020-12-16 20:07:25 所属栏目:百科 来源:网络整理
导读:这里很奇怪的错误我们正确地收到了一个像“/ users / 8788234”这样的请求 在Rails中,我们称之为: redirect_to(:controller = 'login',:from_external_page = true,:on_login = request.env['REQUEST_URI']) and return 我们在Rails日志中看到(正如我们预期
这里很奇怪的错误我们正确地收到了一个像“/ users / 8788234”这样的请求
在Rails中,我们称之为: redirect_to(:controller => 'login',:from_external_page => true,:on_login => request.env['REQUEST_URI']) and return 我们在Rails日志中看到(正如我们预期的): https://sampleapp.com/login?from_external_page=true&on_login=%2Fusers%2F8788234 但是,从IP看到的下一个请求中,查询字符串的值被加扰: Started GET "/login?from_external_page=gehr&on_login=%2Shfref%2S8788234" for xx.xxx.xxx.xxx at yyyy-mm-dd 这将使查询字符串值无意义,并导致以下错误: ArgumentError: invalid %-encoding (该/被更改为%2S无效).查询字符串中每个键值对的每个单个值都被移动了13个字符.每次我们看到这一点,用户代理读取:“Mozilla / 5.0(兼容; MSIE 9.0; Windows NT 6.1; WOW64; Trident / 5.0)”,但我们也看到用户代理成功导航应用程序.有没有人见过这样的东西? http://www.whatismybrowser.com/告诉我,这个用户代理是在Windows 7上运行的IE9,但是我们还没有能够重现错误. 解决方法
这当然是编码问题.我现在使用Rails 4,以下是我当前项目的示例查询字符串.请注意,querystring中的第一个参数是在您的querystring中缺少的“utf8 =?”.
profiles?utf8=?&min_age=1&max_age=99&min_height=1&max_height=6&min_weight=1&max_weight=400 尝试添加“# encoding: UTF-8 at the beginning of the file” (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |