Recuperare un flusso di prezzi via WebSocket in C#. - pagina 5

 
mmmoguschiy-new:
ha completato la domanda.
Estraiamo i dati dalle celle della tabella - hanno dei nomi (identificatori). Non è un problema. L'ho fatto alcuni anni fa, ma immergendo il frame nella mia pagina HTML locale, quindi attraverso degli script. Da esso, la cornice e i suoi eventi sono accessibili. Suppongo che anche da un browser immerso in C++/C#, gli identificatori di pagina HTML (frame) siano disponibili.
 
mmmoguschiy-new:
quale evento, e come si recuperano i dati quando si verifica?
È necessario sottoscrivere l'evento del socket, attraverso il quale il widget riceve i dati :) Oppure è necessario trovare una richiesta adeguata del client al websocket, in modo che in risposta il server invii le citazioni. E martellare costantemente il websocket con richieste. Ma la prima opzione è migliore.
 

no, non c'è bisogno di imbastire il websocket, è un websocket;) una volta che ti sei iscritto agli strumenti giusti, tutto quello che devi fare è leggere il flusso di dati...

ci sono un paio di javascript in questo widget, che comunicano con il server tramite questo stesso websocket... se solo si potessero decifrare, tutto sarebbe più chiaro...

 
Yuriy Asaulenko:
Tiriamo i dati dalle celle della tabella - hanno dei nomi (identificatori).
Questo si chiama parsing!

Forum sul trading, sistemi di trading automatico e test di strategie di trading

Ottenere l'alimentazione dei prezzi tramite WebSocket in C#.

Yuriy Asaulenko, 2016.05.18 18:49

Evento - cambiamento di prezzo nella tabella dei widget nel browser. Non posso entrare più nel dettaglio perché ci sono altri compiti al momento.

E questo si chiama (per citare me stesso)"identificare in qualche modo gli aggiornamenti delle citazioni attuali".Quindi la mia domanda è - perché scrivere la stessa cosa che ho scritto io, ma con parole diverse? Mi stai imburrando? Scrivete il nome dell'evento che dovete sottoscrivere o un frammento di codice. Perché avete bisogno di parole inutili? Beh, a meno che tu non sia pagato per queste parole...
 
Andrey Ziablytsev:

no, non c'è bisogno di sbattersi il websocket, è un websocket;) una volta che ti sei iscritto agli strumenti giusti, tutto quello che devi fare è leggere il flusso di dati...

ci sono un paio di javascript in questo widget, che comunicano con il server tramite questo stesso websocket... Se si potessero decifrare, tutto sarebbe più chiaro.

il problema è che la classe standard.net non ha un metodo per sottoscrivere gli eventi web socket https://msdn.microsoft.com/ru-ru/library/system.net.websockets.websocket(v=vs.110).aspx, può essere usato solo per il pounding :)

cioè o asp.net dovrebbe avere metodi adatti, o qualche altro modo

o non c'è nessun problema, e semplicemente non l'ho ancora capito

WebSocket - класс (System.Net.WebSockets)
  • msdn.microsoft.com
Пространство имен: System.Net.WebSockets Сборка: System (в System.dll) ИмяОписание ИмяОписание (Наследуется от Object.) Классы и члены классов в пространстве имен , которые поддерживаются в Windows 7, Windows Vista SP2 и Windows Server 2008, являются абстрактными классами. Это дает возможность разработчику приложения для...
 

in poche parole, un websocket è una modifica di un semplice socket JS per lavorare attraverso i browser web. la connessione è stabilita all'inizio della sessione e dura fino a quando la pagina viene chiusa...

La comunicazione con il server è un altro problema, usa il loro protocollo json, se ho capito bene. La questione è quella di estrarre le richieste di sottoscrizione dall'html/JavaScript/json stesso...

poi creare una connessione websocket, spingere la richiesta di abbonamento nel socket e leggere il thread nel ciclo...

eh, mi chiedevo dove avrei potuto trovare il tempo...

comunque clientwebsocket è più vicino alla verità, è qualcosa come questohttp://codereview.stackexchange.com/questions/41591/websockets-client-code-and-making-it-production-ready

Websockets client code and making it production-ready
Websockets client code and making it production-ready
  • codereview.stackexchange.com
The following code is helpful to anyone who uses websockets in general... and is probably good template for anyone getting started in this area. I'd like to flesh this out into something that is more general purpose, and reusable, since the assumptions and questions I have will apply to many different situations. The Timespan "Delay" is used...
 
Andrey Ziablytsev:

in poche parole, un websocket è una modifica di un semplice socket JS per lavorare attraverso i browser web. la connessione è stabilita all'inizio della sessione e dura fino a quando la pagina viene chiusa...

La comunicazione con il server è un altro problema, usa il loro protocollo json, se ho capito bene. La questione è quella di estrarre le richieste di sottoscrizione dall'html/JavaScript/json stesso...

poi creare una connessione websocket, spingere la richiesta di abbonamento nel socket e leggere il thread nel ciclo...

eh, mi chiedevo dove avrei potuto trovare il tempo...

a proposito, clientwebsocket è più vicino alla verità, qualcosa come questo http://codereview.stackexchange.com/questions/41591/websockets-client-code-and-making-it-production-ready

Bene, qui ci sono tutte le intestazioni delle chiavi per connettersi ad esso, se ho capito bene. Ho scaricato degli esempi, sto cercando di capirli :) il problema è aggravato dalla quasi totale mancanza di competenze di programmazione C#, dai, aiutami :))

La richiesta di sottoscrizione sembra essere di questo tipo

[{"channel":"/meta/subscribe","clientId":"0xedb0wsq7leqjx0hb680yfi5l5bffb","subscription":"/fixprof/depthmax/GBPUSD","id":"b"}]

и ответ сервера

[{"id":"b","clientId":"0xedb0wsq7leqjx0hb680yfi5l5bffb","channel":"/meta/subscribe","successful":true,"subscription":"/fixprof/depthmax/GBPUSD"}]
 
E non puoi fare a meno di un handshake, c'è il controllo del client, devi prima fare una richiesta https per connetterti al wss e poi iscriverti
 
Pensate davvero che un widget del sito web vi darà le quotazioni in tempo reale senza ritardi? E se no, che senso ha?
 
mmmoguschiy-new:
Si chiama parsing!


E si chiama (per citare me stesso)"per identificare in qualche modo gli aggiornamenti delle citazioni attuali". Quindi la mia domanda è: perché scrivere la stessa cosa che ho fatto io, ma con parole diverse? Mi stai imburrando? Si prega di fornire il nome dell'evento a cui ci si deve iscrivere o un frammento di codice. Perché avete bisogno di parole inutili? Beh, a meno che tu non sia pagato per queste parole...

Beh, anche tu puoi dire delle parole, e molte. :) Probabilmente vieni pagato anche tu, giusto? Parsing? - Beh, ci sono delle lacune nella terminologia. :)

Guardate il modello a oggetti del browser e DHTML e vedrete quali eventi devono essere intercettati. Se dalla pagina nel browser, come farlo direttamente da C#, non lo so. Non lo so, non l'ho provato. :)

Ps Guardate che c'è il parsing - l'analisi delle informazioni del sito. Quindi stiamo parlando di cose diverse. Quindi ha detto correttamente - il parsing di fiddler non è necessario.