Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

cojo2015

Alter Hase

  • »cojo2015« ist der Autor dieses Themas

Beiträge: 516

Wohnort: bei mir zu Hause

Beruf: Schüler

  • Private Nachricht senden

1

11.08.2016, 17:02

[Python | Flask] Wie eine Website nur für einen Client verfügbar machen?

Hallo,

mein Freund und ich entwickeln (immer noch) unsere Website. Aber damit die Hauptfunktion der Website nicht gestört wird, darf sich nur ein Client mit dem Webserver verbinden. Im Internet bin ich nicht fündig geworden. Muss ich Datenbanken verwenden oder geht das auch einfacher?

Danke im Voraus :D

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

11.08.2016, 17:20

Du meinst nur einer gleichzeitig oder nur ein bestimmter?

DeKugelschieber

Community-Fossil

Beiträge: 2 641

Wohnort: Rheda-Wiedenbrück

Beruf: Software-Entwickler

  • Private Nachricht senden

3

11.08.2016, 17:31

Verstehe ich nicht. Wenn nur einer auf die Webseite gleichzeitig zugreifen darf macht ihr grundlegen was falsch.
Wofür die Datenbank? Erzähl doch erstmal was du überhaupt machen willst. Bei der Entwicklung hat normalerweise jeder lokal seinen eigenen Server.

cojo2015

Alter Hase

  • »cojo2015« ist der Autor dieses Themas

Beiträge: 516

Wohnort: bei mir zu Hause

Beruf: Schüler

  • Private Nachricht senden

4

11.08.2016, 17:45

Du meinst nur einer gleichzeitig oder nur ein bestimmter?

Es soll maximal nur ein Client sich verbinden können, d.h. wenn einer sich bereits verbunden hat, soll eine Meldung (alert) erscheinen, dass sich bereits einer mit dem Server verbunden hat. Wenn das allerdings nicht der Fall ist, soll man sich ganz normal verbinden können.

Erzähl doch erstmal was du überhaupt machen willst.

Wenn man die Website aufruft, dann muss man sich zuerst anmelden, um fortzufahren. Danach kann man einen Roboterarm steuern, was auch klappt. Und wenn sich mehrere Clients gleichzeitig verbinden, dann kommt es zu Komplikationen, welche wir verhindern möchten.

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

5

11.08.2016, 18:47

Na wenn man sich erst einloggen muss dann kannst du doch genau das unterbinden wenn schon jemand eingeloggt ist. Quasi nur einer darf sich einloggen und fertig. Dann musst du dir nur überlegen wie du raus findest ob jemand den Browser/Die Seite geschlossen hat ohne sich vorher auszuloggen. Aber da fällt dir bestimmt was ein.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Wirago

Alter Hase

Beiträge: 1 193

Wohnort: Stockerau

Beruf: CRM Application Manager

  • Private Nachricht senden

6

11.08.2016, 19:01

Lasse doch auf deinem Server die aktiven Sessions zählen. Wenn Sessions > 0 dann Zugriff verweigern. Mit den Sessions kannst du auch das Problem lösen wenn sich einer nicht ausloggt, da man Sessions bekanntlich ablaufen lassen kann.

cojo2015

Alter Hase

  • »cojo2015« ist der Autor dieses Themas

Beiträge: 516

Wohnort: bei mir zu Hause

Beruf: Schüler

  • Private Nachricht senden

7

11.08.2016, 19:02

Quasi nur einer darf sich einloggen und fertig.

Genau das trifft den Nagel auf den Kopf :D

Aber da fällt dir bestimmt was ein.

Genau das trifft leider nicht ein. Deshalb habe ich ja hier meine letzt Hoffnung gesehen :(

cojo2015

Alter Hase

  • »cojo2015« ist der Autor dieses Themas

Beiträge: 516

Wohnort: bei mir zu Hause

Beruf: Schüler

  • Private Nachricht senden

8

11.08.2016, 19:04

da man Sessions bekanntlich ablaufen lassen kann.

Jep. nach 5min ist die Session abeglaufen, d.h. wenn nach 5min die Seite erneut geladen wird, dann muss man sich erneut anmelden. Aber das Problem ist, dass wenn die Session abgelaufen ist, kann man den Roboterarm immer noch steuern, obwohl die 5min längst abgelaufen sind. Danach wird die Anzahl der Sessions auf dem Server wieder 0 gesetzt und ein anderer Client kann sich wieder verbinden, obwohl der andere noch aktiv ist.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »cojo2015« (11.08.2016, 19:09)


DeKugelschieber

Community-Fossil

Beiträge: 2 641

Wohnort: Rheda-Wiedenbrück

Beruf: Software-Entwickler

  • Private Nachricht senden

9

11.08.2016, 19:33

Du kannst bestimmt die Lebenszeit der Session erhöhen :)
Geht es um einen echten Roboterarm? Du könntest dann auch den Arm sperren wenn sich einer einloggt. Wenn 1 Minute (oder so) kein Befehl mehr kommt gibst du den Arm wieder frei.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

10

12.08.2016, 06:50

Genau das trifft leider nicht ein.
Lass den Browser nach dem Einloggen ein Websocket öffnen. Der Server lässt immer nur eins zu und die werden beim Schließen des Browsers/Tabs auch automatisch geschlossen. Bekommt der Client kein Websocket geöffnet, dann darf er nichts machen. Problem erledigt.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Werbeanzeige