Ruby on rails rails应用程序如何接受url中的非字母数字字符?
我试图通过接受一些关键字作为GET请求来构造搜索方法 对于exmaple,“articles/search/computer”可能会搜索包含关键字computer的文章 现在,如果搜索词包含一些其他语言,如韩语单词,rails应用程序将生成以下页面Ruby on rails rails应用程序如何接受url中的非字母数字字符?,ruby-on-rails,url,encoding,utf-8,webrick,Ruby On Rails,Url,Encoding,Utf 8,Webrick,我试图通过接受一些关键字作为GET请求来构造搜索方法 对于exmaple,“articles/search/computer”可能会搜索包含关键字computer的文章 现在,如果搜索词包含一些其他语言,如韩语单词,rails应用程序将生成以下页面 Internal Server Error "\x80" on CP949 WEBrick/1.3.1 (Ruby/1.9.2/2011-02-18) at hanun.com:3000 服务器的日志如下所示 [2011-05-15 19:5
Internal Server Error
"\x80" on CP949
WEBrick/1.3.1 (Ruby/1.9.2/2011-02-18) at hanun.com:3000
服务器的日志如下所示
[2011-05-15 19:58:05] ERROR Encoding::InvalidByteSequenceError: "\x80" on CP949
我在Windows7中,使用ruby 1.9.2p180和rails 3.0.5。我使用webrick作为开发服务器。
如何解决此问题,以便rails应用程序将接受非字母数字字符作为url字符串
此url不起作用:=한국
但是,以下url不起作用:/한국 通过http发送的URL只能是基本ascii,请参阅或
本质上,您的url变成:好的,问题不在于rails,而在于操作系统。在windows中,如果url中的任何非字母字符在rails应用程序中作为速记url出现,则该url将不被接受。在linux中,它工作得很好。这只发生在rails上
请注意,此问题仅出现在Webrick&&windows 7&&rails环境中 是的,我用PHP开发了一些应用程序,可以接受这样的非ascii字符串。对于这种情况,如果将非ascii字符作为变量值传入,则可以正常工作。但是,如果缩短的url中包含非ascii字符,则此功能不起作用。