0

我们的应用程序提供了一个 API,人们可以使用它来提交如下 URL:

curl -X POST http://app.local/resource -d'url=http://news.google.com/newshl=en&q=obama&um=1&ie=UTF-8&output=rss' 

不幸的是,Rails 似乎弄乱了这个参数。关于如何解决这个问题的任何想法?请参阅下面的日志:

Processing ApplicationController#index (for 127.0.0.1 at 2010-06-08 19:03:09) [POST]
  Parameters: {"um"=>"1", "url"=>"http://news.google.com/newshl=en", "output"=>"rss", "q"=>"obama", "ie"=>"UTF-8"}

我希望以下内容:

  Parameters: {"url"=>"hhttp://news.google.com/newshl=en&q=obama&um=1&ie=UTF-8&output=rss"}
4

1 回答 1

1

Rails 到底搞砸了什么?

如果您指的是它没有获得完整的 Google URL(即将其分离为输出、q 和其他参数),那是因为如果您想将 '&' 字符用作值的一部分,则需要对其进行编码. 就像是:

curl -X POST http://app.local/resource -d'url=http://news.google.com/newshl=en%26q=obama%26um=1%26ie=UTF-8%26output=rss' 
于 2010-06-08T17:13:56.140 回答