AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Daten übers Internet versenden
Thema durchsuchen
Ansicht
Themen-Optionen

Daten übers Internet versenden

Ein Thema von Nicolai1234 · begonnen am 13. Jul 2005 · letzter Beitrag vom 19. Jul 2005
Antwort Antwort
Seite 2 von 3     12 3      
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#11

Re: Daten übers Internet versenden

  Alt 14. Jul 2005, 19:36
ftp ist auch nicht gerade 100% lauffähig wenn man pecht hat, mit einem router dazwischen.
evtl muss man dann passiv oder alternative einstellungen machen damit das funzt. und normale "daus" kommen damit meist nicht klar ( besondert wenn sie keinen gescheiten client nehmen sondern den IE )

zum thema "wie kommuniziere ich durch einen router mit indy (dateien oder strings oder streams ist erstmal egal und fast gleich zu behandeln)" würde ich euch gerne mal aufklären:

wenn man einen router sein eigen nennt, werden alle AUSGEHENDEN anfragen an einen server(im internet) durch NAT des routers korrekt weitergeleitet und funktionieren normal immer.

wenn es jetzt um verbindungen geht, die vom internet aus, auf einen server HINTER einem router gehen,
also wenn eine anfrage aus dem internet durch meinen router auf einen rechner @ home durchgereicht werden muss, ist dies nur mit portforwarding möglich (routereinstellungen).

wenn es sich aber jetzt um "daus" handelt die nichtmal wissen ob sie ein router oder nur ein modem haben ( wo jetzt nur die firewall bzw garnix eingestellt werden müsste, für eine funktionierende ingoing verbindung ) dann muss man das ganze von der "zentralen internet server" geschichte betrachten

das heist, ich habe irgendwo im internet (linux/windows) einen server (tcp/ip technisch gesehen z.b. TidTCPServer) der auf verbindungen wartet.
nun haben alle anderen leute, die sich dateien schicken wollen oder sonstiges senden/empfangen wollen, NUR einen clienten als programm. also z.b. TidTCPClient.
wenn die sich jetzt nun zum server verbinden, ist dies eine AUSGEHENDE verbindung, die natürlich vom router zugelassen wird!
somit steht eine gültige verbindung in BEIDE richtungen ! also kann man mit ein wenig knowhow (eigentlich stinknormales TCP protocol) in BEIDE richtungen daten (egal welche) senden UND empfangen (ja ohne einen server zuhause zu haben)
das ganze kann man in diversen demos (z.b. die indy demos simple tcp transfer usw) einsehen, wie das quellcodemäßig zu friemeln ist.
also das sollte jetzt nur ein tipp für diejenigen sein, die das tcp-protocol nicht kennen und auch nicht wissen, das man auch mit einem clienten daten empfangen kann und nicht nur mit dem server
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Jarmen_Kell

Registriert seit: 17. Mär 2005
188 Beiträge
 
#12

Re: Daten übers Internet versenden

  Alt 14. Jul 2005, 21:16
Joa ok, einiges wusste ich davon schon, aber eben nicht alles. Werd ich mir merken!

Hast du eine Idee, wie ich als Serverlose Person das gefuchst machen kann?
Hab wie gesagt nur "etwas" Platz bei funpic.

Bei kleinen Daten hätte ich ja gedacht, dass das vom Client über ftp hochgeladen wird und dann alle x Zeit der andere nachsieht, ob was da ist und das dann ggf herunterlädt und vom Server löscht.-
Große könnte man zerteilen und einzelt hochladen .. aber irgendwie finde ich das nicht sehr elegant.
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#13

Re: Daten übers Internet versenden

  Alt 14. Jul 2005, 22:32
solange man nicht den eigenen server code laufen lassen kann ist im prinzip alles not(elegant)
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Chris1986

Registriert seit: 17. Jul 2003
Ort: Aachen
350 Beiträge
 
Delphi 7 Enterprise
 
#14

Re: Daten übers Internet versenden

  Alt 14. Jul 2005, 23:14
Also, FTP würde ich auf keinen Fall nehmen. Denn die meisten FTP-Server erlauben nur 1-4 Verbindungen zur gleichen Zeit. Dann nimm lieber Crosskylix und schreib ein einfaches CGI, das per http-POST strings entgegennimmt und speichert. (Textdatei, DB, wo auch immer). Über das gleiche CGI-Script kannst du dann die Daten abholen.

Gruß
Christian
Es gibt nur 10 Typen von Menschen auf der Welt:
Die, die Binärcode verstehen und die, die es nicht tun . . .
  Mit Zitat antworten Zitat
Nicolai1234

Registriert seit: 21. Feb 2004
1.008 Beiträge
 
Turbo Delphi für Win32
 
#15

Re: Daten übers Internet versenden

  Alt 14. Jul 2005, 23:54
CrossKylix geht bei mir nicht und Kylix kommt auch nicht in Frage (kein Linux)

Ich habe also leider keine Möglichkeit sowas zu erstellen. Gibt es da nicht vllt. schon fertige Programme?
Ich brauche ja nur ein kleines Serverprogramm, an dem sich 2 Clients einloggen können. Dann soll jeder Client dem anderen Nachrichten schicken können... (ohne verschlüsselung, höchstbelastungen etc.)

Wie lange dauert es für gute Programmierer so etwas zu basteln? Bestünde die Möglichkeit - wenn ich ganz lieb bitte - dass jemand ein solches Programm erstellt?

Viel habe ich als Gegenleistung leider nicht zu bringen (außer ein - für mich jedenfalls - sehr nützliches Freewaretool, was ich dann demnächst veröffentlichen kann)
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#16

Re: Daten übers Internet versenden

  Alt 15. Jul 2005, 01:18
sowas könnte man schon machen. aber um auf das cgi zu kommen.. da könnte man auch genausogut php nehmen ( und dafür brauchste ja bekanntlich nur ein editor )
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Jarmen_Kell

Registriert seit: 17. Mär 2005
188 Beiträge
 
#17

Re: Daten übers Internet versenden

  Alt 15. Jul 2005, 09:08
Also ich könnte sowas glaub ich recht fix bauen, wenn es sich nur um Strings handelt.
Bei anderen Daten geht das auch, dauert eben nur länger

Meld dich mal bei icq!
(Bin heute Nachmittag - Abend/Nacht on)
  Mit Zitat antworten Zitat
Jarmen_Kell

Registriert seit: 17. Mär 2005
188 Beiträge
 
#18

Re: Daten übers Internet versenden

  Alt 15. Jul 2005, 19:13
PHP wird man da eher nicht nehmen können, da der Client ja auch gerne wissen möchte, wann es etwas für ihn gibt.
Und alle x Zeit nachzusehen ist ja wohl ne wirklich schlechte Möglichkeit!
  Mit Zitat antworten Zitat
Chris1986

Registriert seit: 17. Jul 2003
Ort: Aachen
350 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: Daten übers Internet versenden

  Alt 15. Jul 2005, 19:19
Das funktioniert mit einem CGI-Script so einfach auch nicht. Um das CGI ohne Browser-Aufruf zu starten ist ein Cronjob nötig. Und ob der Provider andere Ports geöffnet hat damit man eine TCP/IP-Verbindung zum Programm herstellen kann ist auch nicht sicher. Ausserdem hast du dann das Problem, dass das CGI als Client fungiert und das Programm als Server, womit wir wieder am Anfang das Problems stehen
Die Strings von Zeit zu Zeit abholen halte ich da für die bessere Idee.

Gruß
Christian
Es gibt nur 10 Typen von Menschen auf der Welt:
Die, die Binärcode verstehen und die, die es nicht tun . . .
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#20

Re: Daten übers Internet versenden

  Alt 15. Jul 2005, 20:16
ihr müsst besser lesen, was derjenige mit dem cgi vorschlag gemeint hat.

senden:
client connected -> cgi soeichert daten ab -> verbindung ende

empfangen:
anderer client connected alle paar sekunden -> daten da? wenn ja, runterladen -> verbindung ende

also so ungefär wie in unserem DP Chat

jedoch ist dies keine ereignis-getriggerte abfrage der daten sondern eine "Try and error"

wo jedoch auch bei indy client mit thread, der als endlosschleife die nachrichten abholt genauso ist, jedoch mit einer sehr sehr geringeren differenzzeit zwischen den "anfragen, ob noch was da ist"

die einzige beste lösung ist halt immer eine stetige verbindung zum server, der dann natürlich auch stetig rennen muss -> "1x durchlauf" scripte und programme daher weniger geeignet.

es gibt jetzt noch den zwischendrin fall- wo ich mir z.b. ein phpscript mache, das in einer schleife eine socketverbindung abhorcht und auf daten wartet. das wäre jedoch schon wegen dem timeout(das man abschalten könnte) und dem ressourcen/cpu verbrauch nur ein hirngespinnst von mir ?!

sollte man mal ausprobieren
aber ich denke nicht das es zufriedenstellend stabil laufen würde -> auch sehr anfällig gegen floodattacken usw
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz