2014-07-03 83 views
0

我正在使用Ruby on Rails 4.1,我試圖實現一個自定義MIME類型的API。也就是說,在config/initializers/mime_types.rb我註冊一個別名,像下面:奇怪的導軌行爲與自定義MIME類型

Mime::Type.register_alias 'application/json', :my_json 

從另一個系統我想通過運行一個HTTP PUT請求與curl訪問API,這種方式:

curl http://www.my_api.org/articles.my_json --request PUT --header "Content-Type: application/json" --data-binary '{\"key\": {\"a\": \"1\", \"b\": \"2\"}}' 

然而,在我的Rails應用程序檢查ArticlesController參數,我得到下面的輸出(注意:article參數是「不必要的」和那些複製「通緝令」 key參數):

Parameters: {"key": { "a"=>"1", "b"=>"2" }, "article": { "a"=>"1", "b"=>"2" }} 

問題是什麼?這是一個錯誤嗎?我該如何解決這個問題?


注意:我已經通過執行HTTP GET請求來實現並訪問其他類似的API,並且所有工作都按預期工作。這個問題似乎只在我執行HTTP PUT請求時纔會發生。

+0

聽起來很熟悉。我之前也見過這樣的問題。 –

回答

0

@rafaelfranca - 不,它不是一個錯誤。這就是wrap_parameters的工作原理。您可以在您的應用程序config/initializers/wrap_parameters.rb中禁用此文件。

請參閱github