- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我无法从 BitStamp API 接收任何数据。我在这里做错了什么?我的内容形成了错误的响应结果:
{"error": "Missing key, signature and nonce parameters"}
public ActionResult Index()
{
const string BaseUrl = "https://www.bitstamp.net/api/balance/";
var client = new RestClient();
var request = new RestRequest();
client.BaseUrl = BaseUrl;
AddApiAuthentication(request);
var response = client.Execute(request);
var foo = response.Content;
//{"error": "Missing key, signature and nonce parameters"}
return View();
}
public void AddApiAuthentication(RestRequest restRequest)
{
var nonce = DateTime.Now.Ticks;
var signature = GetSignature(nonce, apiKey, apiSecret, clientId);
restRequest.AddParameter("key", apiKey);
restRequest.AddParameter("signature", signature);
restRequest.AddParameter("nonce", nonce);
}
private string GetSignature(long nonce, string key, string secret, string clientId)
{
string msg = string.Format("{0}{1}{2}", nonce, clientId, key);
return ByteArrayToString(SignHMACSHA256(secret, StrinToByteArray(msg))).ToUpper();
}
public static byte[] SignHMACSHA256(String key, byte[] data)
{
HMACSHA256 hashMaker = new HMACSHA256(Encoding.ASCII.GetBytes(key));
return hashMaker.ComputeHash(data);
}
public static byte[] StrinToByteArray(string str)
{
return System.Text.Encoding.ASCII.GetBytes(str);
}
public static string ByteArrayToString(byte[] hash)
{
return BitConverter.ToString(hash).Replace("-", "").ToLower();
}
API 身份验证似乎对 this post 中的用户有效.我是否以正确的方式执行请求?
最佳答案
对于我们的新应用程序,我们使用了以下代码:
public class BitstampAuthenticatedRequest : RestRequest
{
#region Data
private readonly string _clientId = "xxxxx"; // Numbers
private readonly string _apiKey = "xxxxx"; // Random numbers and letters
private readonly string _apiSecret = "xxxx"; // Random numbers and letters
private long Nonce = DateTime.Now.Ticks;
#endregion
#region Constructor
public BitstampAuthenticatedRequest(string resource, Method method)
: base(resource, method)
{
this.AddParameter("key", _apiKey);
this.AddParameter("nonce", Nonce);
this.AddParameter("signature", CreateSignature());
}
#endregion
#region Methods
private string CreateSignature()
{
string msg = string.Format("{0}{1}{2}", Nonce,
_clientId,
_apiKey);
return ByteArrayToString(SignHMACSHA256(_apiSecret, StringToByteArray(msg))).ToUpper();
}
private static byte[] SignHMACSHA256(String key, byte[] data)
{
HMACSHA256 hashMaker = new HMACSHA256(Encoding.ASCII.GetBytes(key));
return hashMaker.ComputeHash(data);
}
private static byte[] StringToByteArray(string str)
{
return System.Text.Encoding.ASCII.GetBytes(str);
}
private static string ByteArrayToString(byte[] hash)
{
return BitConverter.ToString(hash).Replace("-", "").ToLower();
}
#endregion
}
然后这样调用它:
// Decide which url to use
var baseUrl = "https://www.bitstamp.net/api/balance/";
// Create the authenticated request
RestRequest request = new BitstampAuthenticatedRequest(baseUrl, Method.POST);
// Get the response
var response = new RestClient().Execute(request);
Justed 在控制台应用程序中再次测试了代码,并且可以正常工作。如果您需要进一步的帮助,请发表评论。
关于c# - RestSharp BitStamp 身份验证失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21612185/
我无法从 BitStamp API 接收任何数据。我在这里做错了什么?我的内容形成了错误的响应结果: {"error": "Missing key, signature and nonce param
我正在尝试使用 Bitstamp 的私有(private) api 来查询我的帐户余额。我相信我发布的数据是正确的,因为没有返回任何错误,但 Bitstamp 的回答总是空的 * Trying 1
bitstamp 的新认证说明如下: Signature is a HMAC-SHA256 encoded message containing: nonce, client ID and API k
我不确定这个问题是否适用于 SO,首先我认为这是我的代码的问题,但后来我尝试了 Postman,但得到了相同的错误响应。我正在尝试使用 Bitstamp API 来执行买入订单(或卖出,它是相同的),
我正在尝试使用 bitstamp 的 API 在我的网页上获取货币交易价格。 我已经研究过这个问题,但我仍然无法让它工作,因为它总是返回ERROR 使用的链接是 https://www.bitstam
我正在尝试对 Bitstamp 进行私有(private) REST 调用(请参阅 https://www.bitstamp.net/api/)。 但是,我得到以下响应: {"error":"缺少 k
我正在尝试将我的 BitStamp 帐户中的不同信息显示到 Google 电子表格中。为此,我们使用了 Google Apps Script (GAS),当然还有 Javascript。 我得到的错误
我正在尝试从 Bitstamp Websocket v2.0 API 获取实时比特币价格数据。如果需要,我在哪里可以获得证书?如果证书下载是自动的,我如何确保 python 可以验证收到的证书? Bi
我的爱好是通过 API 买卖比特币,我已经通过使用 lua 也存在的“requests”库成功地使用 python 完成了这项工作。我正在使用位戳 API。但是,我的 lua 代码无法正常工作。 这是
我是一名优秀的程序员,十分优秀!