pas2js und node

Antworten
Mathias
Beiträge: 6899
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

pas2js und node

Beitrag von Mathias »

Ich habe gerade etwas entdeckt, man kann mit JavaScribt auch Server Programme schreiben.
Dieses Programm speichert die Anzahl Klicks vom Button auf den Server.

Um da ganze zu starten, muss man auf dem Server, bei mir localhost folgendes eingeben.

Code: Alles auswählen

node click.js
Dann kann man in einem Browser bei Adresse folgendes eingeben http://localhost:3000/ und es werden die Klicks gezählt.
Dies ist eine Basis um selbst etwas Server Seitiges zu programmieren.

click.js:

Code: Alles auswählen

const http = require('http');
const fs = require('fs');

let clickCount = 0;

try {
  clickCount = parseInt(fs.readFileSync('clickCount.txt', 'utf8'));
} catch (error) {
  console.log('Keine vorherige Zählung gefunden, starte bei 0');
}

const server = http.createServer((req, res) => {
  if (req.url === '/click') {
    clickCount++;
    fs.writeFileSync('clickCount.txt', clickCount.toString());
    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end(`Klicks: ${clickCount}`);
  } else {
      res.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});
      res.end(`
      <html>
        <body>
          <h1>Klick-Zähler</h1>
          <button onclick="handleClick()">Klick mich!</button>
          <p id="count">Klicks: ${clickCount}</p>
          <script>
            function handleClick() {
              fetch('/click')
                .then(response => response.text())
                .then(data => document.getElementById('count').textContent = data);
            }
          </script>
        </body>
      </html>
    `);
  }
});

server.listen(3000, () => {
  console.log('Server läuft auf http://localhost:3000/');
});
Nun zur Frage ist sowas auch mit pas2js möglich ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
theo
Beiträge: 10856
Registriert: Mo 11. Sep 2006, 19:01

Re: pas2js und node

Beitrag von theo »

Mathias hat geschrieben: Fr 21. Mär 2025, 15:59 Nun zur Frage ist sowas auch mit pas2js möglich ?
Wozu?
Man kann auch über Tokio nach Rom fliegen, aber wozu?

Benutzeravatar
Jorg3000
Lazarusforum e. V.
Beiträge: 359
Registriert: So 10. Okt 2021, 10:24
OS, Lazarus, FPC: Win64
Wohnort: NRW

Re: pas2js und node

Beitrag von Jorg3000 »

Hi!
Siehe:
https://wiki.freepascal.org/pas2js

Code: Alles auswählen

pas2js -Tnodejs hello.pas
When compiled succesfully, the code can be run in node using the following command.

Code: Alles auswählen

nodejs hello.js

Mathias
Beiträge: 6899
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: pas2js und node

Beitrag von Mathias »

theo hat geschrieben: Fr 21. Mär 2025, 16:29
Mathias hat geschrieben: Fr 21. Mär 2025, 15:59 Nun zur Frage ist sowas auch mit pas2js möglich ?
Wozu?
Man kann auch über Tokio nach Rom fliegen, aber wozu?
Stimmt, ist eigentlich gar nicht nötig, da es ein Server Programm ist, reicht ein ganz normale EXE welche man mit Pascal erstellen kann.
Anscheinend würde es gehen, obwohl es nicht viel Sinn macht.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Antworten