Suchergebnisse

Suchergebnisse 1-20 von insgesamt 315.

  • Zitat von Paykoman: „Ich möchte gern noch mal auf den proxy-agent eingehen, da bist Du leider nicht näher drauf eingegangen. “ Weil ich nicht weiß, wozu das gut sein soll. Wenn ich einen Reversproxy auf Nodebasis verwenden sollte, dann wäre das wohl eher Redbird. Zitat von Paykoman: „Ich habe dort heute auch schon einigie missglückte Versuche gestartet aber wenn ich es richtig verstehe, sollte dieses Modul doch eine Verbindung zu nginx der Webseite aufbauen und für proxys einen tunnel zum ws-Ser…

  • Zitat von Paykoman: „Wie, jetzt? Auch bei SSL bzw. wss? “ Nein, das ist ja genau dafür da. Ich hab nur gemeint, dass CSRF alleine nicht gegen man-in-the-middle Angriffe schützt. Ganz allgemein gesprochen. Zitat von Paykoman: „Die Frage war/ist ob auf gleicherweise dem Nutzer der ja mit meinem ws-Server verbunden ist ein emit (ws-anfrage) untergeschoben werden kann, ist letztlich ja auch nur ein Protokoll. Denn wenn ja müsste man die emits mit dem CSRF-Token validieren, da dieser als einziges dem…

  • Mit validateUser kann man eigentlich nur Verbindungsversuche ablehnen (wenn nötig). Der Client existiert in diesem Moment noch nicht wirklich. Die ID kannst du im server.on('connection') vergeben. Die Modifikationen am Klienten bleiben dann auch außerhalb des Eventlisterners verfügbar.

  • Ich würde dir hier empfehlen auf fertige Proxylösungen zu setzen. Ich verwende gerne Caddy oder NginX. Beide sind kostenlos und multiplatform. Bei Caddy kannst du Websockets einfach mit dem "websocket" preset in der proxy configuration einrichten. Bei NginX ist es etwas komplizierter.

  • Richtig. Wenn ich mich richtig erinnere gibt es aber den Unterschied, das beim einen Klienten ein Event-Objekt und beim anderen direkt die message übergeben wird.

  • Zitat von Paykoman: „Was ich nicht ganz verstehe, weil es ja alles clientintern bleibt, da jede Verbindung ihre eigene Instanz öffnet und es kein übergeordnete Auflistung gibt in dessen die verscheidenen Instanzen gespeichert wären um mit dessen arbeiten zu können. “ Es gibt eine übergeordnete Liste: server.clients Zitat von Paykoman: „Dies wollte ich so jetzt nicht unbedingt machen weil das Objekt von client sowohl im Server als auch im clientHandler doppelt gespeichert würde, was bei deiner Va…

  • Zitat von Paykoman: „Ich wollte eine emit()-Funktion schreiben damit ich später meinen alten vorhandenen Server übernehmen kann, es scheint aber schon eine emit() zu geben und zu überschreiben weiß ich nicht ob es Sinnvoll ist und zu einem hat es zu Fehlern geführt, da diese Funktion automatisch beim connecten und verlassen ausgeführt wird “ emit() wird schon vom EventEmitter von Node verwendet. Etwas ungünstig, dass auch Socket.io diesen Namen verwendet. Ich würde da doch eher send() und broadc…

  • on()-Funktion unter ws

    Lichtjaeger - - Node.js Einsteiger

    Beitrag

    Der Anfang ist schon ganz gut, aber mit client[name] kann es sein das du auch Eigenschaften des Websockets umschreibst. Ich hab das ganze mal etwas ergänzt. JavaScript-Quellcode (21 Zeilen) Es würde aber mehr Sinn machen mit einem richtigen Eventemitter zu arbeiten und einen neuen Prototypen abzuleiten. Dadurch wird das ganze sauberer und universeller.

  • Zitat von Paykoman: „aber du weißt nicht zufällig wo ich den ws-client finde? “ hier JavaScript-Quellcode (2 Zeilen)

  • Zitat von Paykoman: „Nun habe ich gesehen es gibt ein paar Alternativen wie z.B. WS und ich bin am überlegen ob ich den Aufwand wagen soll um auf WS umzusteigen. “ Von ws auf socket.io umzustellen ist recht unproblematisch. Andersherum würde ich mir die Arbeit allerdings nicht machen. Das ist einfach zu aufwendig. Bei ws kannst du nur binäre Daten oder Texte übertragen. Du müsstest also immer erst alles in JSON verpacken. Es gibt auch keine Kanäle, Räume oder Callback-Funktionen. Du müsstest das…

  • Stimmt. Du musst ja auch req.body verwenden. Sorry, mein Fehler. req.params ist ja nur für die Routenparameter.

  • Zitat von vision27: „input(type="checkbox" name=idex value=val.vokabel_english) “ Am besten du schreibst erst mal "index" richtig. Dann überprüfst du, ob deine Input Felder auch wirklich alle ein name Attribut haben. Lass dir zum debug auch das vollständige params Objekt ausgeben. Wenn du dann noch nicht weiter kommst, schau ich es mir wieder an.

  • Mit plain text (also einfachen Text) meine ich beispielsweise den Textinhalt eines Absatzes oder auch HTML Text, der nicht von Variablen mit Pug beeinflusst wird.

  • this hat gar nichts damit zu tun. Das ist eher ein Timingproblem. Da es asynchron ist, wird das .then erst nach dem console.log aufgerufen. Du müsstest den Ablauf anders organisieren. Entweder JavaScript-Quellcode (10 Zeilen) oder evtl JavaScript-Quellcode (11 Zeilen)

  • "Verbindung abgelehnt". Überprüf mal Port, Benutzername, Passwort und Datenbanknahme. Kannst du dich mit einem anderen Datenbankklienten (z.B. MySQL Workbench) verbinden? Für gewöhnlich lässt man die Verbindung auch offen und baut sie nicht für jede Datenbankabfrage neu auf.

  • Ohne die Fehlermeldung zu kennen, ist das schwer zu sagen.

  • Deine "layout.pug" ist zwar nicht wirklich pug lastig, aber du kannst dir ja die besten Teile für dich herauspicken. Finde ich gut. Ganz gut bisher. Wenn du noch für CSS etwas ähliches sucht, wie pug zu HTML könntest du dir auch noch Stylus ansehen. Das gibt dir ähnliche Freiheiten wie pug.

  • Zitat von vision27: „Das mit #{} in einem Tag gefällt mir gut. “ In dem Fall könntest du dir ja auch mal Aurelia für das Frontend ansehen.

  • Nur so als Tipp. Die schwarzen Boxen auf der Seite von Pug sind "Live Edit Boxen". Du kannst also in den linken Boxen den Inhalt bearbeiten und in den rechten Boxen direkt das Renderergebnis sehen. Zum Ausprobieren ist das Ideal.

  • Beim interpolieren wird aus einem Javascript Statement der Content des HTML-Tags generiert. z.B.: Quellcode (5 Zeilen)Wenn der Text nicht generiert wird, ist es effektiver (weniger Rechenzeit) einfach nur den Text anzugeben: Quellcode (2 Zeilen) In der aktuellen Version von Pug gibt es aber auch eine Mischversion, die JS Templatestrings ähnelt: Quellcode (1 Zeile)