ruby 在ActiveResource中使用Auth标记

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 在ActiveResource中使用Auth标记相关的知识,希望对你有一定的参考价值。

#!/usr/bin/env ruby

# Using Auth Tokens in ActiveResource
# Borrowed from http://stackoverflow.com/questions/2918419/add-api-key-to-every-request-in-activeresource/6124110#6124110

require 'active_resource'
require 'awesome_print'

class Resource < ActiveResource::Base
  class << self
    def element_path_with_auth_token(*args)
      args[1]['auth_token'] = self.auth_token
      element_path_without_auth_token(*args)
    end

    def new_element_path_with_auth_token(*args)
      args[1]['auth_token'] = self.auth_token
      new_element_path_without_auth_token(*args)
    end

    def collection_path_with_auth_token(*args)
      args[1]['auth_token'] = self.auth_token
      collection_path_without_auth_token(*args)
    end

    def inherited(klass)
      class << klass
        attr_accessor :auth_token
        alias_method_chain :element_path, :auth_token
        alias_method_chain :new_element_path, :auth_token
        alias_method_chain :collection_path, :auth_token
      end

      klass.site = 'https://apitest.batchbook.com/'
      klass.prefix = '/api/v1/'
      klass.format = :json
      klass.auth_token = 'GR5doLv88FrnLyLGIwok'
    end
  end
end

class Person < Resource; end
ap Person.collection_path({}, { email: 'dummy@address.com' })
ap Person.first({ email: 'dummy@address.com' })

以上是关于ruby 在ActiveResource中使用Auth标记的主要内容,如果未能解决你的问题,请参考以下文章

ruby 黄瓜ActiveResource与Webmock伪造

ActiveResource 错误处理

使用 ASIHTTPRequest 从 iPhone 上传到 Ruby on Rails

如何在Ruby on Rails的应用程序级别添加toastr JS通知

如何使用 AutoIt (*.au3) 脚本在 CMD 窗口中发出命令?

pr音频不能在au中编辑?