相关疑难解决方法(0)

request.format return*/*

我目前正在为RoR上的应用程序开发API

作为一个例子,我创建了一些XML,加载了创建对象所需的所有信息,让我们说一个Person,并使用Curl我将它提交给我的应用程序

我能够从控制器中调用我想要的创建操作,并且正确传递对象的哈希参数

但是现在我需要应用不同的行为,如果请求是否与XML有关,困扰我的是控制器request.format给出的原因*/*.

有线索吗?

curl -v -H "Content-Type: application/xml; charset=utf-8" --data-ascii @client.xml  http://foo.com:3000/clients?api_key=xxx

def create
  logger.debug request.format # produces "*/*"
  if request.format.xml?
    # never gets here 
  end
end
Run Code Online (Sandbox Code Playgroud)

xml curl ruby-on-rails http mime-types

8
推荐指数
1
解决办法
1万
查看次数

为所有 Rails 路由设置默认值

在 Rails 中,您可以为一组路由(在命名空间内)指定默认值,如下所示:

Rails.application.routes.draw do
  # Other routes

  namespace :api, defaults: { format: :json } do
    resources :users
  end 
end
Run Code Online (Sandbox Code Playgroud)

如何将这样的默认值应用于应用程序中的所有路由?

ruby-on-rails rails-routing

3
推荐指数
1
解决办法
1951
查看次数

标签 统计

ruby-on-rails ×2

curl ×1

http ×1

mime-types ×1

rails-routing ×1

xml ×1