Author

Topic: Kucoin. Какая строка подписи по WebSocket? (Read 215 times)

member
Activity: 351
Merit: 37
смысл вот в этом какой
Code:
  await ws.SendAsync 
?
async для того и сделан чтобы его использовать без await. где ты скопипастил этот код пусть там тебе и объяснят.
@JackQwerty это надо f12 нажать хотябы бля. ты думаешь он знает чтоль это
full member
Activity: 322
Merit: 195
BTC-ПОЭТ
Где ошибка подписи по 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(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(buffer_send), WebSocketMessageType.Text, true, CancellationToken.None);
      byte[] buffer = new byte[1024];
      var result = await ws.ReceiveAsync(new ArraySegment(buffer), CancellationToken.None);
      string messages = Encoding.UTF8.GetString(buffer, 0, result.Count);// ERROR required token
     

Для начала нужно посмотреть пришел ли токен, проверьте строку
string token = rwsdata.token; // что тут будет получено
console.log('token: ' + token);
ANV
jr. member
Activity: 114
Merit: 1
Где ошибка подписи по 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(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(buffer_send), WebSocketMessageType.Text, true, CancellationToken.None);
      byte[] buffer = new byte[1024];
      var result = await ws.ReceiveAsync(new ArraySegment(buffer), CancellationToken.None);
      string messages = Encoding.UTF8.GetString(buffer, 0, result.Count);// ERROR required token
     
Jump to: