Post
Topic
Board Кодеры
Merits 2 from 1 user
Re: Kucoin. Какая строка подписи по WebSocket?
by
JackQwerty
on 27/12/2021, 16:54:30 UTC
⭐ Merited by andy_pelevin (2)
Где ошибка подписи по WebSocket?

HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, new Uri("https://api.kucoin.com/api/v1/bullet-public"));
      HttpResponseMessage response = await httpClient.SendAsync(request).ConfigureAwait(false);
      string message = await response.Content.ReadAsStringAsync();
      RootWebSocket rws = JsonConvert.DeserializeObject<RootWebSocket>(message);
      var rwsdata = rws.data;
      string token = rwsdata.token;
      string urlWebSocket = rwsdata.instanceServers[0].endpoint;     
using var ws = new ClientWebSocket();
      await ws.ConnectAsync(new Uri(urlWebSocket), CancellationToken.None);
      var id = DateTime.UtcNow.Ticks;
      var str_send = JsonConvert.SerializeObject(new { id = id, type = "subscribe",token=token, topic = "/market/ticker:BTC-USDT,ETH-USDT", privateChannel = false, response = true });
      var buffer_send = Encoding.UTF8.GetBytes(str_send);
      await ws.SendAsync(new ArraySegment<byte>(buffer_send), WebSocketMessageType.Text, true, CancellationToken.None);
      byte[] buffer = new byte[1024];
      var result = await ws.ReceiveAsync(new ArraySegment<byte>(buffer), CancellationToken.None);
      string messages = Encoding.UTF8.GetString(buffer, 0, result.Count);// ERROR required token
     

Для начала нужно посмотреть пришел ли токен, проверьте строку
string token = rwsdata.token; // что тут будет получено
console.log('token: ' + token);