在Bitstamp的API文档中,提到了client_id。它用于生成签名。 https://www.bitstamp.net/api/
但我找不到如何获得client_id。
有任何提示吗?非常感谢。
答案 0 :(得分:2)
您是否通过他们的指示注册了API密钥?他们说:
要获取API密钥,请转到“帐户”,“安全”,然后“API访问”。设置权限并单击“生成密钥”.`
获得API密钥后,您将使用由API密钥,API密钥和客户/客户端ID编码的HMAC。您应该可以通过“帐户余额”页面获取您的客户ID,我相信它被称为您的“客户ID”。
答案 1 :(得分:1)
使用此代码获取主意。这是Ruby代码
require 'open-uri'
require 'json'
require 'base64'
require 'openssl'
require 'hmac-sha2'
require 'net/http'
require 'net/https'
require 'uri'
def bitstamp_private_request(method, attrs = {})
secret = "xxx"
key = "xxx"
client_id = "xxx"
nonce = nonce_generator
message = nonce + client_id + key
signature = HMAC::SHA256.hexdigest(secret, message).upcase
url = URI.parse("https://www.bitstamp.net/api/#{method}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
data = {
nonce: nonce,
key: key,
signature: signature
}
data.merge!(attrs)
data = data.map { |k,v| "#{k}=#{v}"}.join('&')
headers = {
'Content-Type' => 'application/x-www-form-urlencoded'
}
resp = http.post(url.path, data, headers)
console_log "https://www.bitstamp.net/api/#{method}/"
resp.body
end
def nonce_generator
(Time.now.to_f*1000).to_i.to_s
end
答案 2 :(得分:0)
您在 Bitstamp 上更改密码的页面会显示您的客户端 ID(包含字母和数字)。
答案 3 :(得分:-1)
我对bitstamp api有一些问题
下面是我的代码php
$message = $nonce.$client_id.$api_key;
$signature = strtoupper(hash_hmac('sha256', $message, $secret_key));
$post_string = 'api_key='.$api_key.'&signature='.$signature.'&nonce='.$nonce;
$url = "https://www.bitstamp.net/api/balance/";
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT, 4);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);
$json = curl_exec($ch);
if(!$json) {
echo curl_error($ch);
}
curl_close($ch);
$tempData = json_decode($json);
print_r($tempData);<br>
输出:
stdClass Object ( [error] => Missing key, signature and nonce parameters )