ruby-on-rails - Ruby/Rails - 通过 ActiveResource 使用 Web 服务

标签 ruby-on-rails web-services rest activerecord activeresource

刚开始使用 Rails,我想使用具有以下端点的 Web 服务(使用 ActiveResource):

GET/user?some_header=XYZ

这是我的 ActiveResource 类:

    class User < ActiveResource::Base
      self.site = "url"
      set_collection_name 'user'  #avoid pluralization within the url
    end

现在对上述端点的调用会是什么样子?

我试过了

    User.get('', headers={:some_header => "XYZ"})

但是我收到了 404(当我手动触发该请求时,该请求有效)。

最佳答案

尝试

User.all(:params=>{:some_header => "XYZ"})

如果您想避免路径中的格式,您可以使用 ovveride 基 collection_path 方法

   def collection_path(prefix_options = {}, query_options = nil)
        prefix_options, query_options = split_options(prefix_options) if query_options.nil?
        "#{prefix(prefix_options)}#{collection_name}.#{format.extension}#{query_string(query_options)}"
    end

   def collection_path(prefix_options = {}, query_options = nil)
        prefix_options, query_options = split_options(prefix_options) if query_options.nil?
        "#{prefix(prefix_options)}#{collection_name}#{query_string(query_options)}"
      end

关于ruby-on-rails - Ruby/Rails - 通过 ActiveResource 使用 Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9275595/

相关文章:

ruby-on-rails - ElasticSearch Rails - 设置自定义分析器

Java 类未找到错误

c# - 如何使用 WCF 更改外部对象的名称?

json - MarkLogic 8 - 即使我们指定了 JSON,Rest 端点也返回 XML

java - 如何使用 JAVA Rest Assure 修复此错误

ruby-on-rails - Bundler::RubyVersionMismatch: 你的 Ruby 版本是 1.9.3,但是你的 Gemfile 指定了 2.0.0

ruby-on-rails - 如果用户行不存在,如何创建用户行,而不是使用函数 create() 创建

javascript sendfile 二进制数据到 Web 服务

php - Magento Rest api 通过电子邮件 ID 获取客户

ruby-on-rails - 没有要加载的文件 -- nokogiri