class AppChain::Http
Constants
- DEFAULT_ID
- DEFAULT_JSONRPC
- DEFAULT_PARAMS
Attributes
url[RW]
Public Class Methods
new(url)
click to toggle source
# File lib/appchain/http.rb, line 13 def initialize(url) @url = url end
Public Instance Methods
call_rpc(method, jsonrpc: DEFAULT_JSONRPC, params: DEFAULT_PARAMS, id: DEFAULT_ID)
click to toggle source
wrapper for call rpc method
@param method [String] method you want to call @param jsonrpc [String] jsonrpc version @param params [Array] rpc params @param id [Integer] jsonrpc id
@return [Faraday::Response]
# File lib/appchain/http.rb, line 25 def call_rpc(method, jsonrpc: DEFAULT_JSONRPC, params: DEFAULT_PARAMS, id: DEFAULT_ID) conn.post("/", rpc_params(method, jsonrpc: jsonrpc, params: params, id: id)) end
conn()
click to toggle source
wrapper faraday object with AppChain
URL and Content-Type
@return [Faraday]
# File lib/appchain/http.rb, line 49 def conn Faraday.new(url: url) do |faraday| faraday.headers["Content-Type"] = "application/json" faraday.request :url_encoded # form-encode POST params faraday.adapter Faraday.default_adapter # make requests with Net::HTTP end end
rpc_params(method, jsonrpc: DEFAULT_JSONRPC, params: DEFAULT_PARAMS, id: DEFAULT_ID)
click to toggle source
wrapper for rpc params
@param method [String] method you want to call @param jsonrpc [String] jsonrpc version @param params [Array] rpc params @param id [Integer] jsonrpc id
@return [String] json string
# File lib/appchain/http.rb, line 37 def rpc_params(method, jsonrpc: DEFAULT_JSONRPC, params: DEFAULT_PARAMS, id: DEFAULT_ID) { jsonrpc: jsonrpc, id: id, method: method, params: params }.to_json end