質問

URL形式を使用するサービスにアクセスしようとしています。 www.example.com/api/api_key/action

以下のコードは、私が達成しようとしていることの小さな例です。

require 'httparty'

class MyAPI
  include HTTParty
  debug_output $stdout

  base_uri "example.com/api/#{@api_key}"

  def initialize(api_key)
     @api_key = api_key
  end

  def statistics
    return self.class.get("/statistics")
  end
end

サーバーリクエスト:

MyAPI.new('apikey').statistics

として出てきます

GET /api//statistics

私はそれが楽観的であることを知っていましたが、base_uriにAPI_KEY変数を置きました。 URLが動的API_KEYを使用するようにするにはどうすればよいですか?

役に立ちましたか?

解決

@api_keyのリーダーメソッドがありません。

以下をクラスに追加して、初期化後に@API_KEYの設定を許可します。

attr_accessor :api_key

または追加するために追加しますが、後で設定しません。

attr_reader :api_key
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top