Heim >Backend-Entwicklung >PHP-Tutorial >Wie lade ich Dateien mit Jakarta HttpClient erfolgreich auf einen PHP-Server hoch?

Wie lade ich Dateien mit Jakarta HttpClient erfolgreich auf einen PHP-Server hoch?

Linda Hamilton
Linda HamiltonOriginal
2024-12-15 09:36:11614Durchsuche

How to Successfully Upload Files to a PHP Server Using Jakarta HttpClient?

Dateien mit Jakarta HttpClient und PHP hochladen

Dieser Artikel stellt eine Lösung zum Hochladen von Dateien auf einen Apache-Server vor, auf dem PHP unter Verwendung der Jakarta HttpClient-Bibliothek von Java ausgeführt wird Version 4.0 Beta2.

Der bereitgestellte Java-Code führte zunächst zum PHP Das Skript erkennt die hochgeladene Datei nicht. Das Problem war auf eine falsche Konfiguration in der Java-Klasse zurückzuführen, die ein FileEntity-Objekt verwendete, ohne explizit mehrteilige Parameter anzugeben.

Korrekte Java-Implementierung:

Der überarbeitete Java-Code enthält die Verwendung von MultipartEntity, um die HTTP-Anfrage richtig zu formatieren:

MultipartEntity mpEntity = new MultipartEntity();
ContentBody cbFile = new FileBody(file, "image/jpeg");
mpEntity.addPart("userfile", cbFile);
httppost.setEntity(mpEntity);

Diese Konfiguration erstellt effektiv eine mehrteilige HTTP-POST-Anfrage mit einer Binärdatei Anhang, entsprechend den Anforderungen des PHP-Skripts.

PHP-Skript:

Das PHP-Skript bleibt einfach:

if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
  echo "File ". $_FILES['userfile']['name'] ." uploaded successfully.\n";
  move_uploaded_file ($_FILES['userfile'] ['tmp_name'], $_FILES['userfile'] ['name']);
} else {
  echo "Possible file upload attack: ";
  echo "filename '". $_FILES['userfile']['tmp_name'] . "'.";
  print_r($_FILES);
}

Mit dem richtigen Java-Implementierung und PHP-Skript, Datei-Uploads sollten nun erfolgreich verarbeitet werden.

Das obige ist der detaillierte Inhalt vonWie lade ich Dateien mit Jakarta HttpClient erfolgreich auf einen PHP-Server hoch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn