Сообщение Re[6]: Сделать Post строки, часть которой в зашифрованном ви от 22.06.2021 9:20
Изменено 22.06.2021 13:23 Passerby
Re[6]: Сделать Post строки, часть которой в зашифрованном ви
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Поскольку неанглийского текста у тебя нет, разницы быть не должно.
А она есть.
В одном случае {"code":"900001","msg":"Symbol [CRO-USDT] Not Exists"}, т.к. пока не хочу выставлять ордера существующих пар, т.е. нормальный ответ, в другом неверный "KC-API-SIGN".
Ключи и адрес песочницы, т.е. там позволяется поиграть и деньги не реальные. Но все равно хотелось бы еще кое-что проверить, поэтому просьба ордера реальных пар не выставлять, чтобы эти игровые деньги не исчезли.
НС>Поскольку неанглийского текста у тебя нет, разницы быть не должно.
А она есть.
static string secret = "f778dc7e-46c1-4f09-87e3-548e0beb9cb6", key = "60cb25cb2f6e210006b78289";
static string passphrase = "abpbrfabpbrf";
public async Task<string> OpenOrderExample()
{
string url = "https://openapi-sandbox.kucoin.com/api/v1/orders";
var nonce = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString();
var endpoint = "/api/v1/orders";
var clientOid = Guid.NewGuid();
var body = "{\"clientOid\":\"" + clientOid.ToString() + "\",\"price\":\"34000\",\"side\":\"buy\",\"size\":\"0.001\",\"symbol\":\"CRO-USDT\",\"timeInForce\":\"GTC\",\"type\":\"limit\"}";
var strForSign = nonce + "POST" + endpoint + body;
var hmac = new HMACSHA256(Encoding.UTF8.GetBytes(secret));
var signature = Convert.ToBase64String(hmac.ComputeHash(Encoding.UTF8.GetBytes(strForSign)));
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, new Uri(url));
request.Headers.Add("KC-API-KEY", key);
request.Headers.Add("KC-API-SIGN", signature);
request.Headers.Add("KC-API-TIMESTAMP", nonce);
request.Headers.Add("KC-API-PASSPHRASE", passphrase);
//request.Content = new StringContent(body, Encoding.UTF8, "application/json");
request.Content = new FormUrlEncodedContent(new List<KeyValuePair<string, string>>{
new KeyValuePair<string, string>( "clientOid", clientOid.ToString() ),
new KeyValuePair<string, string> ("price","34000" ),
new KeyValuePair<string, string> ( "side","buy" ),
new KeyValuePair<string, string> ("size","0.001" ),
new KeyValuePair<string, string> ( "symbol","CRO-USDT" ),
new KeyValuePair<string, string> ( "timeInForce","GTC" ),
new KeyValuePair<string, string> ( "type","limit")
});
HttpResponseMessage response = await httpClient.SendAsync(request).ConfigureAwait(false);
string message = await response.Content.ReadAsStringAsync();
return message;
}В одном случае {"code":"900001","msg":"Symbol [CRO-USDT] Not Exists"}, т.к. пока не хочу выставлять ордера существующих пар, т.е. нормальный ответ, в другом неверный "KC-API-SIGN".
Ключи и адрес песочницы, т.е. там позволяется поиграть и деньги не реальные. Но все равно хотелось бы еще кое-что проверить, поэтому просьба ордера реальных пар не выставлять, чтобы эти игровые деньги не исчезли.
Re[6]: Сделать Post строки, часть которой в зашифрованном ви
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Поскольку неанглийского текста у тебя нет, разницы быть не должно.
А она есть.
В одном случае {"code":"900001","msg":"Symbol [CRO-USDT] Not Exists"}, т.к. пока не хочу выставлять ордера существующих пар, т.е. нормальный ответ, в другом неверный "KC-API-SIGN".
Ключи и адрес песочницы, т.е. там позволяется поиграть и деньги не реальные. Но все равно хотелось бы еще кое-что проверить, поэтому просьба ордера реальных пар не выставлять, чтобы эти игровые деньги не исчезли.
UPD
Ключи удалил
НС>Поскольку неанглийского текста у тебя нет, разницы быть не должно.
А она есть.
public async Task<string> OpenOrderExample()
{
string url = "https://openapi-sandbox.kucoin.com/api/v1/orders";
var nonce = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString();
var endpoint = "/api/v1/orders";
var clientOid = Guid.NewGuid();
var body = "{\"clientOid\":\"" + clientOid.ToString() + "\",\"price\":\"34000\",\"side\":\"buy\",\"size\":\"0.001\",\"symbol\":\"CRO-USDT\",\"timeInForce\":\"GTC\",\"type\":\"limit\"}";
var strForSign = nonce + "POST" + endpoint + body;
var hmac = new HMACSHA256(Encoding.UTF8.GetBytes(secret));
var signature = Convert.ToBase64String(hmac.ComputeHash(Encoding.UTF8.GetBytes(strForSign)));
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, new Uri(url));
request.Headers.Add("KC-API-KEY", key);
request.Headers.Add("KC-API-SIGN", signature);
request.Headers.Add("KC-API-TIMESTAMP", nonce);
request.Headers.Add("KC-API-PASSPHRASE", passphrase);
//request.Content = new StringContent(body, Encoding.UTF8, "application/json");
request.Content = new FormUrlEncodedContent(new List<KeyValuePair<string, string>>{
new KeyValuePair<string, string>( "clientOid", clientOid.ToString() ),
new KeyValuePair<string, string> ("price","34000" ),
new KeyValuePair<string, string> ( "side","buy" ),
new KeyValuePair<string, string> ("size","0.001" ),
new KeyValuePair<string, string> ( "symbol","CRO-USDT" ),
new KeyValuePair<string, string> ( "timeInForce","GTC" ),
new KeyValuePair<string, string> ( "type","limit")
});
HttpResponseMessage response = await httpClient.SendAsync(request).ConfigureAwait(false);
string message = await response.Content.ReadAsStringAsync();
return message;
}В одном случае {"code":"900001","msg":"Symbol [CRO-USDT] Not Exists"}, т.к. пока не хочу выставлять ордера существующих пар, т.е. нормальный ответ, в другом неверный "KC-API-SIGN".
Ключи и адрес песочницы, т.е. там позволяется поиграть и деньги не реальные. Но все равно хотелось бы еще кое-что проверить, поэтому просьба ордера реальных пар не выставлять, чтобы эти игровые деньги не исчезли.
UPD
Ключи удалил