ホームページ > バックエンド開発 > PHPチュートリアル > Jakarta HttpClient を使用してファイルを PHP サーバーに正常にアップロードするにはどうすればよいですか?

Jakarta HttpClient を使用してファイルを PHP サーバーに正常にアップロードするにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-15 09:36:11
オリジナル
612 人が閲覧しました

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

Jakarta HttpClient と PHP を使用したファイルのアップロード

この記事では、Java の Jakarta HttpClient ライブラリを使用して、PHP を実行している Apache サーバーにファイルをアップロードするためのソリューションを紹介します。バージョン4.0 beta2.

当初、提供された Java コードにより、PHP スクリプトはアップロードされたファイルの検出に失敗しました。この問題は、マルチパート パラメータを明示的に指定せずに FileEntity オブジェクトを使用した Java クラスの誤った構成に起因します。

正しい Java 実装:

改訂された Java コードには、次のものが組み込まれています。 MultipartEntity を使用して HTTP リクエストを適切にフォーマットします:

MultipartEntity mpEntity = new MultipartEntity();
ContentBody cbFile = new FileBody(file, "image/jpeg");
mpEntity.addPart("userfile", cbFile);
httppost.setEntity(mpEntity);
ログイン後にコピー

この構成は効果的ですPHP スクリプトの要件に従って、バイナリ添付ファイルを含むマルチパート HTTP POST リクエストを作成します。

PHP スクリプト:

PHP スクリプトは単純なままです:

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);
}
ログイン後にコピー

正しい Java 実装と PHP スクリプトを使用すると、ファイルのアップロードが正常に処理されるようになります。

以上がJakarta HttpClient を使用してファイルを PHP サーバーに正常にアップロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート