Abrufen eines Preisstroms über WebSocket in C#. - Seite 5

 
mmmoguschiy-new:
ergänzte die Frage.
Wir ziehen die Daten aus den Tabellenzellen - sie haben Namen (Bezeichner). Das ist kein Problem. Ich habe das vor einigen Jahren gemacht, aber indem ich den Rahmen in meine lokale HTML-Seite eintauchte, dann durch Skripte. Von hier aus sind der Rahmen und seine Ereignisse zugänglich. Ich nehme an, dass auch in einem Browser, der in C++/C# eingetaucht ist, die HTML-Seitenbezeichner (Frames) verfügbar sind.
 
mmmoguschiy-new:
welches Ereignis, und wie werden Sie die Daten abrufen, wenn es eintritt?
Sie müssen das Socket-Ereignis abonnieren, über das das Widget Daten erhält :) Oder Sie müssen eine geeignete Client-Anfrage an den Websocket finden, so dass der Server als Antwort die Anführungszeichen sendet. Und den Websocket ständig mit Anfragen überhäufen. Aber die erste Option ist besser.
 

nein, Sie müssen den Websocket nicht zerschlagen, es ist ein Websocket;) sobald Sie die richtigen Tools abonniert haben, müssen Sie nur noch den Datenstrom lesen...

In diesem Widget sind einige Javascripts enthalten, die über denselben Websocket mit dem Server kommunizieren... wenn sie nur entschlüsselt werden könnten, wäre alles klarer...

 
Yuriy Asaulenko:
Wir ziehen Daten aus Tabellenzellen - sie haben Namen (Bezeichner).
Das nennt man Parsing!

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Abrufen von Preisinformationen über WebSocket in C#.

Yuriy Asaulenko, 2016.05.18 18:49

Ereignis - Änderung des Preises in der Widget-Tabelle im Browser. Ich kann nicht näher darauf eingehen, da es im Moment andere Aufgaben gibt.

Und das nennt man (um mich selbst zu zitieren)"irgendwie Aktualisierungen aktueller Zitate identifizieren".Meine Frage lautet also: Warum schreiben Sie das Gleiche wie ich, nur mit anderen Worten? Wollen Sie mir Honig ums Maul schmieren? Bitte geben Sie den Namen des Ereignisses an, das Sie abonnieren möchten, oder ein Codefragment. Warum brauchen Sie unnötige Worte? Es sei denn, Sie werden nicht für diese Worte bezahlt...
 
Andrey Ziablytsev:

Nein, Sie müssen den Websocket nicht knallen, es ist ein Websocket;) sobald Sie sich bei den richtigen Tools angemeldet haben, müssen Sie nur noch den Datenstrom lesen...

In diesem Widget sind einige Javascripts enthalten, die über denselben Websocket mit dem Server kommunizieren... Wenn sie entschlüsselt werden könnten, würde alles klarer werden.

das Problem ist, dass die Standard-.net-Klasse keine Methode hat, um https://msdn.microsoft.com/ru-ru/library/system.net.websockets.websocket(v=vs.110).aspx Web-Socket-Ereignisse zu abonnieren, kann es nur für pounding verwendet werden :)

d.h. entweder sollte asp.net über geeignete Methoden verfügen, oder eine andere Möglichkeit

oder es gibt kein Problem, und ich habe es nur noch nicht herausgefunden

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

Kurz gesagt ist ein Websocket eine Modifikation eines einfachen JS-Sockets, die über Webbrowser funktioniert. Die Verbindung wird zu Beginn der Sitzung hergestellt und hält an, bis die Seite geschlossen wird...

Die Kommunikation mit dem Server ist ein anderes Thema, er verwendet sein eigenes json-Protokoll, wenn ich es richtig verstehe. Die Frage ist, die Abonnementanfragen aus dem html/JavaScript/json selbst herauszuholen...

dann eine Websocket-Verbindung herstellen, eine Abonnement-Anfrage in den Socket schieben und den Thread in der Schleife lesen...

Ich habe mich schon gefragt, woher ich die Zeit nehmen soll...

clientwebsocket ist übrigens näher an der Wahrheit, das ist etwa sohttp://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:

Kurz gesagt ist ein Websocket eine Modifikation eines einfachen JS-Sockets, die über Webbrowser funktioniert. Die Verbindung wird zu Beginn der Sitzung hergestellt und hält an, bis die Seite geschlossen wird...

Die Kommunikation mit dem Server ist ein anderes Thema, er verwendet sein eigenes json-Protokoll, wenn ich es richtig verstehe. Die Frage ist, die Abonnementanfragen aus dem html/JavaScript/json selbst herauszuholen...

dann eine Websocket-Verbindung herstellen, eine Abonnement-Anfrage in den Socket schieben und den Thread in der Schleife lesen...

Ich habe mich schon gefragt, woher ich die Zeit nehmen soll...

Übrigens, clientwebsocket ist näher an der Wahrheit, etwa so http://codereview.stackexchange.com/questions/41591/websockets-client-code-and-making-it-production-ready

Nun, hier sind alle Kopfzeilen zu den Tasten, um eine Verbindung herzustellen, wenn ich es richtig verstehe. Ich habe eine Menge von Beispielen heruntergeladen, ich bin in ihnen stecken :) das Problem wird durch fast völligen Mangel an C # Programmierkenntnisse verschlimmert, gehen Sie vor und helfen :))

Der Abonnementantrag scheint von dieser Art zu sein

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

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

[{"id":"b","clientId":"0xedb0wsq7leqjx0hb680yfi5l5bffb","channel":"/meta/subscribe","successful":true,"subscription":"/fixprof/depthmax/GBPUSD"}]
 
und hier geht es nicht ohne Handshake, es gibt eine Client-Kontrolle, Sie müssen zuerst eine https-Anfrage stellen, um sich mit dem WSS zu verbinden und sich dann anmelden
 
Glauben Sie wirklich, dass ein Widget auf der Website Ihnen ohne Verzögerung Echtzeit-Kurse liefert? Und wenn nicht, was ist dann der Sinn?
 
mmmoguschiy-new:
Das nennt man Parsing!


Und es heißt (um mich selbst zu zitieren)"Aktualisierungen aktueller Zitate irgendwie zu erkennen". Meine Frage ist also: Warum schreiben Sie das Gleiche wie ich, aber mit anderen Worten? Wollen Sie mir Honig ums Maul schmieren? Bitte geben Sie den Namen des Ereignisses, das Sie abonnieren möchten, oder ein Codefragment an. Warum brauchen Sie unnötige Worte? Es sei denn, Sie werden nicht für diese Worte bezahlt...

Was wollen Sie damit sagen? Nun, Sie können auch Worte sagen, und zwar eine Menge davon. :) Sie werden wahrscheinlich auch bezahlt, oder? Parsing? - Nun, es gibt Lücken in der Terminologie. :)

Schauen Sie sich das Browser Object Model und DHTML an und Sie werden sehen, welche Ereignisse abgefangen werden müssen. Wenn von der Seite im Browser, wie man es direkt von C# zu tun, weiß ich nicht. Ich weiß es nicht, ich habe es nicht ausprobiert. :)

Ps Es wurde festgestellt, dass es ein Parsing gibt - das Parsing von Website-Informationen. Wir sprechen also über unterschiedliche Dinge. Daher richtig gesagt - Fiddler Parsing ist nicht notwendig.