ホームページ >ウェブフロントエンド >jsチュートリアル >XMLHttpRequest ファイルのアップロードでの「リクエストが拒否されました: マルチパート境界がありません」エラーを解決するにはどうすればよいですか?

XMLHttpRequest ファイルのアップロードでの「リクエストが拒否されました: マルチパート境界がありません」エラーを解決するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-18 16:42:30890ブラウズ

How to Resolve

MultipartFormData を使用した XMLHttpRequest ファイルのアップロード

XMLHttpRequest を使用してファイルをアップロードしようとすると、次のエラーが発生する場合があります:「リクエストは拒否されました」マルチパート境界が見つからなかったためです。」この問題を解決するには、次の手順に従います。

1.カスタム xhr.file プロパティを削除します

行 xhr.file = file を削除します。マルチパート ファイルのアップロードには使用されないためです。

2. FormData オブジェクトを使用します

xhr.send(file); の代わりに、FormData を使用してファイルを multipart/form-data ポスト データ オブジェクトにラップします:

<code class="javascript">var formData = new FormData();
formData.append("thefile", file);
xhr.send(formData);</code>

3.サーバー上のファイルにアクセスします

FormData を送信した後、$_FILES['thefile'] 内のファイルにアクセスできます (サーバーで PHP が使用されていると仮定します)。

追加メモ:

  • ファイル アップロードのリソースとして MDC および Mozilla Hack デモを使用します。
  • 元のコードの試行では、ファイルを生のポスト データとして送信しました。これには手動が必要です。サーバー上で解析します (常に実行できるわけではありません)。

これらの手順に従うと、正しい multipart/form-data 境界を持つ Ajax XMLHttpRequest を使用してファイルを正常にアップロードできるはずです。

以上がXMLHttpRequest ファイルのアップロードでの「リクエストが拒否されました: マルチパート境界がありません」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。