のColdFusion:あなたがしたい理由あなたはについて詳しく説明することができ、瞬間のためにメインの質問を無視
をアップロードする前に、ファイルの名前を取得これを使って?尋ねる理由は、最初の質問のタイトルは、そのメソッドが実際に何をしているかについて誤った印象を与えるかもしれません。 Form.getPartsArray()は、ファイルがアップロードされる前にファイル情報へのアクセスを提供しません。ファイルはすでにその時点でサーバー上に存在しているため、後のバージョンのCFでは(追加機能付きで)必ずしもcffile action=upload
を使用するだけでは購入できません。
この 機能の起源と運命に関する詳しい情報は誰にもありますか?しかし
は、あなたの他の質問に答えるために - それは私が最後にチェック文書化されていない機能です。フォームフィールドやアップロードに関する新しい機能の一部が欠けていた以前のバージョンのCFではより便利でした。 内部的には、ほとんどのフォームデータは標準要求オブジェクト(HttpServletRequest)を使用して処理できます。ただし、それらはマルチパートリクエスト、つまりファイルアップロードをサポートしていません。特別なハンドラが必要です。 Macromedia/Adobeは、内部実装にcom.oreilly.servletライブラリを使用することを選択しました。それはFORM.getPartsArray()
を使用してアクセスしているものです。
O'Reillyの資料は、(少なくとも)CF8という優れた指標であるため、CFにバンドルされています。ただし、内部機能を使用すると、実装が変更され、アプリケーションが中断されるリスクが常に発生します。また、別のエンジンに移動した場合、そのコードはサポートされていない可能性があります。だから "あなたはお金を支払う、あなたはあなたの選択を取る"。最初のリンクの場合
CF8/Formスコープ
![CF8 FORM.getPartsArray()](https://i.stack.imgur.com/iKTIS.png)
、第二の答えは、最初のものよりも良く見えます。 –