Http Upload

Übersicht BlitzBasic BlitzPlus

Neue Antwort erstellen

 

mactep

Betreff: Http Upload

BeitragMo, Sep 26, 2011 3:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

Ich habe mein iPhone4 gejailbreakt,und mit iFile einen Http Daten WebServer zum Laufen gebracht.Nun Will ich auf den Server zugreifen. Downloaden von Daten habe ich so Gelöst :

Code: [AUSKLAPPEN]

stream=OpenTCPStream(iDevice_IpAdress,iDevice_iFilePort)
   
   
   
   
   WriteLine stream,"GET "+Dir$+" HTTP/1.1"
   WriteLine stream,"Host: iFile Web Server"
   WriteLine stream,""
   
   If SaveAspath$ = "" Then SaveAspath$ = "Recieved.iFILE"
   
   
   file = WriteFile(SaveAspath$)
   While Not Eof(stream)
      If ReadAvail(stream)
         
         WriteLine file,ReadLine$(stream)
         
      EndIf
   Wend
   
   CloseTCPStream(stream)
   CloseFile file


Kann mir bitte einer erklären wie ich ein Upload hinbekomme,im Forum habe ich gesucht aber leider nix (glaub ich,verzeiht wenn ich mich irre Wink ) passendes zum Thema "Http Upload" gefunden. Kenne mich in dem Gebiet leider noch nicht so gut aus. Wer ein Paar nützliche Links oder gar ein Bsp. Code hat dem währe ich sehr Dankbar.

MfG Mactep !

Eingeproggt

BeitragMo, Sep 26, 2011 15:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
WriteLine stream,"Host: iFile Web Server"


Als Host musst du die IP-Adresse deines Servers angeben (bzw. Domain falls vorhanden).
Aber nur um nochmal nachzufragen weil ich grad voll baff bin... Du verwendest dein IPhone als Webserver? Shocked

mfG, Christoph.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9
 

mactep

BeitragDi, Sep 27, 2011 3:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi ,

Ja mach ich ! Wieso nicht ? So kann ich auf das Dateisystem zugreifen ohne mir unnötig OpenSSH auf dem iphone zu Installieren.

Hintergrund :

Da ich iTunes® so sehr mag hab ich beschlossen mir ein kleines Prog. zu basteln das unter anderem :

- Backup von Apps .
- Backup von Bildern.
- Backup von iPod® Music Datenbanken.
- Backup von Telefonbuch Einträgen.

usw. ermöglicht.


Der von iFile benutzte Webserver hat eine Upload Funktion nur weis ich nicht wie ich das Richtig "Ansprechen" muss.

Hoffe du kannst mir da weiterhelfen.

Lg Mactep !

Eingeproggt

BeitragDi, Sep 27, 2011 13:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Musste mich auch grad n bissi spielen, aber mit folgendem Code konnte ich die Startseite von google.at (und weiters auch von meinem Server) herunterladen / abspeichern:

BlitzBasic: [AUSKLAPPEN]
Local iDevice_IpAdress$="74.125.39.104" ;www.google.at
Local iDevice_iFilePort=80 ;HTTP-Port, muss 80 sein
Local Dir$="/" ;Um Startseite aufzurufen - andernfalls hier Dateinamen _relativ_ zur IP angeben, also zB "/index.php"

Local stream=OpenTCPStream(iDevice_IpAdress$,iDevice_iFilePort)

WriteLine stream,"GET "+Dir$+" HTTP/1.1"
WriteLine stream,"Host: "+iDevice_IpAdress$
;WriteLine stream,"User-Agent: BlitzBasic"
WriteLine stream,""

If SaveAspath$ = "" Then SaveAspath$ = "Recieved.iFILE"


Local file = WriteFile(SaveAspath$)
While Not Eof(stream)
If ReadAvail(stream) Then
WriteLine file,ReadLine$(stream)
EndIf
Wend

CloseTCPStream(stream)
CloseFile file

DebugLog "Fertig"
WaitKey()
End


Wichtig ist schätze ich mal dass du auf Port 80 deine Anfrage sendest und den Pfad (Dir$) korrekt angibst.
Wenn da dein Server nicht mitspielt, poste mal bitte die empfangenen Daten.

Und noch eine Frage... Dein Code - den ich für mich zum Laufen brachte - lädt etwas herunter... der Thread heißt aber "Upload"... Das verwirrt mich nun etwas?

mfG, Christoph.

EDIT: Autsch, das tut weh... hab wohl ein wenig das Lesen verlernt über die Sommerferien... Also es geht ja doch um Upload... Da hab ich diesen Thread mal gefunden auf die Schnelle:
https://www.blitzforum.de/foru...tei+upload
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9
 

mactep

BeitragDi, Sep 27, 2011 15:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi !
Danke für die Antwort !

Das mit dem Downloaden klappt mit dem Oben angegebenen Code Gut !

Ich wollt eigentlich wissen,wie ich vorgehen muss bei Uploads.Was genau muss ich dem Server zusenden das er Versteht das ich ihm die Datei XY senden will.Hab den Oberen Code nur "spaßeshalber" mit gepostet,dachte mir vill. muss man nur ne kleinigkeit bei Code: [AUSKLAPPEN]
WriteLine stream,"GET "+Dir$+" HTTP/1.1"
verändern....Liegt das an dem GET ? ist ja wohl das Gegenteil von dem was ich machen will !Denk & Hoff ich mal ..nur was gehört da anstelle hin ?

Lg Mactep !
 

PhillipK

BeitragDi, Sep 27, 2011 16:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Das GET stammt von was anderem.
Im grunde macht das zb dein Firefox/Opera auch, wenn du eine seite aufrufst.

Es sendet ein GET-Paket wo drin steht, welche datei du haben möchtest.
Der server sendet dir als antwort darauf die gewünschte datei.
Es gibt das selbe nochmal als 'POST' paket, wo mehr informationen mit übertragen werden (und ?sicherer? glaube ich) - aber das ist Fallspezifisch und kommt auf den Server an.

Wie man einem Server allerdings verklickert "ey, speicher mal die datei ab", ist mir schleierhaft.
Aber es muss irgendeine schnittstelle geben oder vorbereitet werden. Hoffentlich findet sich hier jemand, der erklären kann, wie das geht Very Happy Das würde mich nämlich auch einmal intressieren.
Bis dato kannst du ja zb mal googlen, wie man einen Upload durchführt Smile

Holzchopf

Meisterpacker

BeitragDi, Sep 27, 2011 17:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich würd's so machen:

1. Mal nach den HTTP-Specs googlen und mich dort einlesen. Ist ne menge Arbeit (und ich bin grad noch nicht auf die entsprechende Stelle gestossen) und alles englisch, aber man sollte danach wissen was man tut.

2. Wenn du im Besitz eines Netzwerk-Aufzeichnen-Dingens bist, einfach mal eine Datei irgendwo hochladen und den Datenverkehr mitsniffen und Versuchen zu adaptieren.

Das sollte dann zu so etwas wie dem hier führen:
1. Ein Dokument Namens RFC1867 HTTP file upload. Immer gut sowas Wink

2. Ein mitgesnifftes Beispiel, das ich im Netz fand: Code: [AUSKLAPPEN]
POST /cgi-bin/upload.pl HTTP/1.1
Accept: application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/pdf, */*
Referer: http://deville/cgi-bin/upload.pl
Accept-Language: en-us
Content-Type: multipart/form-data; boundary=---------------------------7d03135102b8
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT)
Host: deville
Content-Length: 316
Connection: Keep-Alive

-----------------------------7d03135102b8
Content-Disposition: form-data; name="file"; filename="D:\hess\dev\www
+\notes\hello.txt"
Content-Type: text/plain

Hello there

-----------------------------7d03135102b8
Content-Disposition: form-data; name="done"

done
-----------------------------7d03135102b8--


Meine Versuche, BB und das grosse weite Web in Einklang zu bringen, sind schon sehr lange her. Aber was ich dir mit Sicherheit noch sagen kann, ist, dass die beiden "--" am Schluss zwingend da sein müssen. Ebenfalls (wenn du nachzählst, siehst du das), muss vor den echten boundaries "--" stehen. Also wenn du "boundary=TolleZeichenDieNichtInDerDateiVorkommen" setzt, muss du die Daten mit "--TolleZeichenDieNichtInDerDateiVorkommen" abgrenzen.
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm
 

mactep

BeitragDi, Sep 27, 2011 19:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi Team,

herzliches Dankeschön für eure Informative Textarbeit Smile .Bin leider erst Heut Nacht wieder zu Hause.Hoffentlich komm ich dann,dank eurer Ratschläge weiter.Wenn nicht ... ihr erfahrt´s als erstes Wink

Werde euch auf dem Laufendem Halten.

Lg & nochmals Danke, Mactep !
 

mactep

BeitragMi, Sep 28, 2011 1:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Re ;Sorry für Doppel Post !

Vorweg erstmal Danke für eure Hilfe.Hab mich schlau gelesen und beschlossen das Ganze anders zu lösen,
mit FTP. Habe einen Server für das iPhone eingerichtet Bekommen (vsftpd).Mit FTP kenne ich mich bereits aus und denke ich werde keine weiteren Probs. haben ( Hoff ich mal Wink )

Lg Mactep Exclamation

ZEVS

BeitragDo, Sep 29, 2011 17:33
Antworten mit Zitat
Benutzer-Profile anzeigen
FTP hat aber den Nachteil, dass man mit einem Sniffer die Logindaten rausbekommt und so den Server verunstalten kann. Demnach darf der Benutzer nur wenige Rechte haben - dazu musst du den FTP sehr genau konfigurieren. Mit HTTP entstehen die Rechte ja nur durch das auswertende Skript, was wesentlich sicherer ist.

Irgendwo gab es (in der englischen Community glaube ich) schon mal einen Code dazu...

ZEVS
 

mactep

BeitragMi, Okt 05, 2011 0:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi !

ja weis ich , aber der Server wird ja nur kurze Zeit gestartet. Nach der Datenübertragung wird er selbstv. beendet.Das da ein "Restrisiko" bleibt mit FTP war mir klar,ist nun-mal um einiges einfacher Umzusetzen oder Täusche ich mich da ?

Lg Mactep !

Neue Antwort erstellen


Übersicht BlitzBasic BlitzPlus

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group