Web-Interface für eine Desktopanwendung

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Benutzeravatar
X0r
Beiträge: 2770
Registriert: 15.03.2007 21:47
Kontaktdaten:

Web-Interface für eine Desktopanwendung

Beitrag von X0r »

Moin Leute,
ich habe derzeit folgendes Problem:
Eine bestehende Desktopanwendung zur Verwaltung von Daten soll dahingehend erweitert werden, dass eine Synchronisierung mit einer Online-Datenbank (z.B. SQL) über eine Web-Schnittstelle möglich ist.

Wie wäre dies am effizientesten zu bewerkstelligen? Welche modernen Technologien stehen einem hierfür zur Verfügung?
Benutzeravatar
TroaX
Beiträge: 659
Registriert: 08.03.2013 14:27
Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
Wohnort: NRW
Kontaktdaten:

Re: Web-Interface für eine Desktopanwendung

Beitrag von TroaX »

Kommt darauf an. Wie viel Kontrolle hast du über den Server? Web-Hosting? V-Server? Dedicated Server?
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box :lol:
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Benutzeravatar
X0r
Beiträge: 2770
Registriert: 15.03.2007 21:47
Kontaktdaten:

Re: Web-Interface für eine Desktopanwendung

Beitrag von X0r »

V-Server mit einem Python-Interpreter installiert. Wünschenswert wäre aber, dass die Lösung auch mit gewöhnlichem Web-Hosting laufen würde.

Eine Idee wäre, die Kommunikation ganz normal über HTTP per POST und GET durchzuführen. Große Datensätze würden über POST übertragen werden. Das Back-End könnte dann über Python oder PHP realisiert werden. Die Daten könnte man im JSON- oder XML-Format übertragen.
Allerdings hält sich mein Wissen auf diesem Gebiet bislang in Grenzen, sodass ich mir nicht sicher bin, ob die beschriebene Methode langfristig eine geeignete wäre.
Benutzeravatar
TroaX
Beiträge: 659
Registriert: 08.03.2013 14:27
Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
Wohnort: NRW
Kontaktdaten:

Re: Web-Interface für eine Desktopanwendung

Beitrag von TroaX »

Auch mit Web-Hostern? Dann schau dir mal https://getdirectus.com/ an. Ist in PHP geschrieben und läuft auf nahezu jedem Webspace. Kommuniziert wird mit einer REST-API. Es können also GET, POST, PUT und DELETE Anfragen gestellt und mit den Daten weiter gearbeitet werden. Das wäre die einfachste Möglichkeit. DU könntest aber auch einen Firebase oder CouchDB Wrapper schreiben. CouchDB ist eine dokumentorientierte NoSQL-Datenbank mit eigener REST-API. Firebase ist ein Datenbank-Service von Google mit REST-API. Allerdings nicht für Lau. Contentful ist ein ähnlicher Service.

Aber wenn du mehr Kontrolle haben möchtest, lässt sich sowas auch selbst relativ schnell schreiben. Mit Python z.B. mit den Frameworks Eve oder Flask.
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box :lol:
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Benutzeravatar
X0r
Beiträge: 2770
Registriert: 15.03.2007 21:47
Kontaktdaten:

Re: Web-Interface für eine Desktopanwendung

Beitrag von X0r »

Moin,
vielen Dank für deine Rückmeldung. getdirectus liefert sein eigenes Front-End mit und erscheint mir daher zu aufgebläht. Ein Front-End wird erst mal nicht benötigt (bzw. ist das Front-End ja quasi in der Desktopanwendung vorhanden). Später soll aber eventuell ein eigenes Web-Front-End entwickelt werden. Weiterhin sollen die Daten letztlich in einer MySQL-Datenbank angelegt werden (CouchDB fällt daher weg).

Derzeit erscheint mir die beste Methode zu sein, die Schnittstelle selbst über PHP zu erstellen. Wie siehst du das?
Benutzeravatar
TroaX
Beiträge: 659
Registriert: 08.03.2013 14:27
Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
Wohnort: NRW
Kontaktdaten:

Re: Web-Interface für eine Desktopanwendung

Beitrag von TroaX »

Ah ok also du brauchst im Grunde nur die REST-API, die auf die Datenbank mapped. Dann schau dir mal das an: https://github.com/mevdschee/php-crud-api

Unterstützt sogar Postgres ^^

Ansonsten blleibt da fast nur noch selber schreiben. Auch wenn ich persönlich kein Fan von SQL-Datenbanken bin. Aber ich muss es ja auch nicht schreiben xD
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box :lol:
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Benutzeravatar
X0r
Beiträge: 2770
Registriert: 15.03.2007 21:47
Kontaktdaten:

Re: Web-Interface für eine Desktopanwendung

Beitrag von X0r »

Alles klar; ich danke dir für deine Einschätzung!
Antworten