Я пытаюсь написать код в C#, чтобы сделать вызов API, похожий на эту команду curl:
$ curl -H "X-MBX-APIKEY: vmPUZE6mv9SD5VNHk4HlWFsOr6aKE2zvsw0MuIgwCIPy6utIco14y7Ju91duEh8A" -X POST 'https://api.binance.com/api/v3/order' -d 'symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000×tamp=1499827319559&signature=c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71'
Это то, что я придумал, но по какой-то причине не могу получить это работает.
Буду признателен за помощь в преобразовании команды curl в httpWebRequest
.
private void Binance()
{
long timeStamp = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
var Burl = "https://api.binance.com";
var Endpoint = "/api/v3/order/test";
string dataQueryString = "symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000×tamp=" + timeStamp;
MessageBox.Show(dataQueryString);
var akey = "some api key";
var skey = "some secret key"; //Mijn skey
byte[] skeyBytes = Encoding.ASCII.GetBytes(skey);
var signature = CreateToken(dataQueryString, skey);
var url = Burl + Endpoint + "?" + dataQueryString + "&signature=" + signature;
HttpClient client = new HttpClient();
var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);
httpWebRequest.ContentType = "application/x-www-form-urlencoded";
httpWebRequest.Accept = "*/*";
httpWebRequest.Method = "POST";
httpWebRequest.Headers.Add("X-MBX-APIKEY:" + akey);
textBox1.Text = url;
MessageBox.Show(signature);
}