Class: BinanceClient::AuthenticatedBaseRequest
- Inherits:
-
BaseRequest
- Object
- BaseRequest
- BinanceClient::AuthenticatedBaseRequest
show all
- Defined in:
- lib/binance_client/requests/authenticated_base_request.rb
Direct Known Subclasses
AccountRequest, AccountSnapshotRequest, AllOrdersRequest, BaseCreateOrderRequest, CoinsInfoRequest, CreateSubAccountRequest, SubAccountAssetsRequest, SubAccountBnbBurnStatusRequest, SubAccountCreateApiKeysRequest, SubAccountDepositAddressRequest, SubAccountDepositHistoryRequest, SubAccountSetSpotBnbBurnRequest, SubAccountTransferHistoryRequest, SubAccountTransferRequest, SubAccountsRequest, WithdrawRequest
Instance Method Summary
collapse
Methods inherited from BaseRequest
#headers
Instance Method Details
#params ⇒ Object
23
24
25
26
|
# File 'lib/binance_client/requests/authenticated_base_request.rb', line 23
def params
params_without_signature_with_timestamp_and_recv_window.
merge(signature_hash).to_query
end
|
#params_without_signature ⇒ Object
34
35
36
|
# File 'lib/binance_client/requests/authenticated_base_request.rb', line 34
def params_without_signature
{}
end
|
#params_without_signature_with_timestamp_and_recv_window ⇒ Object
28
29
30
31
32
|
# File 'lib/binance_client/requests/authenticated_base_request.rb', line 28
def params_without_signature_with_timestamp_and_recv_window
attrs_to_merge = { timestamp: timestamp }
attrs_to_merge[:recvWindow] = recv_window if recv_window.present?
params_without_signature.merge(attrs_to_merge)
end
|
#signature ⇒ Object
7
8
9
10
11
12
13
|
# File 'lib/binance_client/requests/authenticated_base_request.rb', line 7
def signature
OpenSSL::HMAC.hexdigest(
OpenSSL::Digest.new("sha256"),
api_secret,
params_without_signature_with_timestamp_and_recv_window.to_query,
)
end
|
#signature_hash ⇒ Object
15
16
17
|
# File 'lib/binance_client/requests/authenticated_base_request.rb', line 15
def signature_hash
{ signature: signature }
end
|
#timestamp ⇒ Object
19
20
21
|
# File 'lib/binance_client/requests/authenticated_base_request.rb', line 19
def timestamp
@timestamp ||= DateTime.now.strftime("%Q")
end
|