[Version 4.1] HttpPostRequestLib

    • Release

    Es gibt 239 Antworten in diesem Thema. Der letzte Beitrag () ist von asusdk.

      Ein user hat mich noch auf etwas aufmerksam gemacht, nämlich das man nicht die Uri auslesen kann, weil ja oftmals bei einem Upload oder ähnlichem man auf eine neue Uri weitergeleitet wird. Dieses habe ich nun eingebaut, an die Uri kommt man nun über die SubmitEventArgs oder direkt über die Instanz.
      Nun ich weiß nicht wie ich das verwirklichen soll, wie stellst du dir das vor?? Also Streamen kann man definitiv damit nicht, ich lade eine Datei in Bytes in den Header rein und dafür benötige ich auch die genaue Länge um sie ebenfalls im Header angeben zu können.

      Willst du bloß eine Datei die vollständig in einem Stream geladen ist einfügen??
      Wieso liegt die Datei nicht lokal auf der Festplatte vor? bzw. kannst du sie nicht temporär anlegen, der Post-Collection hinzufügen und danach wieder löschen?
      Ein user hat mich noch auf etwas aufmerksam gemacht

      Vielen Dank, ich probers mal aus ;)

      //Edit

      HTML-Quellcode

      1. <input name="uploadfile" type="file" size="25">

      wen so das Durchsuchen Feld heißt, wie sollte dan richtig der Code lauten?

      weil so funktionierts nicht:

      VB.NET-Quellcode

      1. Dim s As New OpenFileDialog
      2. If s.ShowDialog = Windows.Forms.DialogResult.OK Then
      3. reg = New HTTPPostRequest("http://www.viruschief.com/index.html")
      4. reg.Files.Add("uploadfile[]", s.FileName)
      5. End If


      Auch Ohne [] nicht.
      Moderatorin: "Apropo ritzen.." Shin Chan: "hoho sie hat Po ritze gesagt"
      "saying to buy a mac because your anti-virus expired is like saying you're out of condoms so you're just going to go fuck dudes"
      "Wie auch in anderen Threads kann ich leider nichts bieten außer vielleicht spaß beim Skypen aber mehr leider auch nicht." - Sind kinder pornos nicht verboten?

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Glossy Cherry“ ()

      Der Vorteil vom Memorystream ist, dass man keine Datei zwischenspeichern muss. Du kannst den stream byteweise auslesen, was du sicherlich benötigen wirst.

      So könnte man z.B. ein Bitmap-Objekt via .Save in einen Memorystream speichern und an deine Postlib übergeben.

      java2s.com/Code/VB/File-Directory/MemoryStreamDemo.htm
      Von meinem iPhone gesendet
      @Glossy Cherry: also die Eckigen Klammern benötigst du NUR wenn du mehrere Dateien hochladen willst, weil dann könntest du sie nämlich als Array übergeben

      HTML-Quellcode

      1. <input name="uploadfile[]" type="file" size="25">
      2. <input name="uploadfile[]" type="file" size="25">
      3. <input name="uploadfile[]" type="file" size="25">
      4. <input name="uploadfile[]" type="file" size="25">
      5. <input name="uploadfile[]" type="file" size="25">


      Das ist sinnvoll um später in PHP die dateien einfach zu bekommen und sie weiter zu verarbeiten. Aber NUR dann wäre auch in VB die Klammer von nöten, wenn du nämlich einen Namen öfters angeben willst

      VB.NET-Quellcode

      1. reg.Post.Add("uploadfile[]", "Datei1")
      2. reg.Post.Add("uploadfile[]", "Datei2")
      3. reg.Post.Add("uploadfile[]", "Datei3")
      4. reg.Post.Add("uploadfile[]", "Datei4")


      würdest du die Klammern weglassen, so würde NUR die letzte Datei hochgeladen werden da die Variable immer wieder überschrieben würde.

      @nikeee13: ich werde mein Glück mal mit dem MemoryStream versuchen ^^
      Hallo,

      in Verbindung mit [VB.NET] Verbindung zu einer MySQL-Datenbank via PHP-Skript und deiner Lib.dll habe ich folgende Fehlermeldung:

      Dim myrequest As New HTTPPostRequest

      das "myrequest" ist blau unterstrichen und es kommt der Fehler:

      Für den Parameter "?29?" von "Public Sub New(?29? As String)" wurde kein Argument angegeben.



      Was ist falsch?

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Diablo“ ()

      Das weiß ich nicht, weil die Lib alleine Funktioniert, wenn die jemand anders nutzt und bin ich nicht dafür verantwortlich. Aber ich meine diesen von dir beschriebenen Fehler da mal in dem Thread gelesen zu haben, ist dort vielleicht schon eine Lösung gepostet worden??

      Aber ansonsten kannst du auch meine [Release] OpenMySqlLib 2.2 - MySQL sicher über ein PHP Script nutzen, die ist auch weitesgehend ausgereift, verschlüsselt und man muss sich nicht mit PHP oder so auskennen.
      Japs, weil immer wieder bemängelt wurde wenn man auf eine MySQL Datenbank im Netz zugreifen möchte, dass man da die Connection Daten im Programm angeben muss, deswegen habe ich diese Dll erstellt die ein Äquivalent zum MySQL Connector darstellt und eben alles über ein PHP Script leitet. Momentan gibts jedoch noch eine kleine Unsicherheit, weil man kein PW angeben kann und damit könnte theoretisch jeder, der diese DLL in sein Projekt einbindet und die URL zu deinem Script heraus bekommt, in deiner DB rumspielen.
      Im nächsten Update kommt dann dass man ein persönliches PW angeben kann.

      [Version 3.0]

      So ich habe heute mal die Lib komplett neu strukturiert, nun ist es auch möglich zur Laufzeit erstellte Daten direkt dem Request zuzuordnen und zwar als ByteArray, so müssen sie nicht mehr zwischengespeichert werden.
      okay werde ohne Obfuscator machen.

      Edit: so is oben, naja ich wollte sie halt vor Kiddies schützen, weil ich schon etwas daran saß mir die Infos ausm Netz zusammen zu suchen und den Header zusammen zu stückeln und ich nich wollte das irgend nen Kiddie mir diesen Code klaut ^^

      Edit2: So habe mal den Eazfuscator.NET genutzt, hoffe nu ists besser.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Dodo“ ()

      öhm...kann es sein dass folgendes nicht geht:

      VB.NET-Quellcode

      1. reg = New HTTPPostRequest(My.Resources.server & "/database.php")
      2. reg.AddVar("type", "download")
      3. reg.Proxy = Nothing
      4. Dim back As String = reg.Submit()
      5. Dim splitted() As String = Split(back, "<||>")
      6. Dim insplit() As String
      7. For x = 0 To splitted.Length - (splitted.Length / 1.5) - 2
      8. insplit = splitted(x).Split("|")
      9. ListView1.Items.Add(New With {Key .id = insplit(0), Key .name = insplit(1), Key .points = insplit(2)})
      10. Next

      Der Fehler: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
      Bei: Dim back As String = reg.Submit()

      Selbiges bei SubmitAsync()
      Ich müsste mir mal was ausdenken denke ich um die Uri zu verifizieren, vlt liegt daran der Fehler, das mit dem Objekt Verweis ist komisch, weil wenn ich was nicht als New() Deklariert habe müsste es ja bei allen dieser Lib auftreten und somit denke ich das irgendwie was mit dem Request nicht passt.
      Weiß aber noch nicht wann ich genau dazu komme, hab in letzter Zeit sehr viel zu tun.