File tree Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Original file line number Diff line number Diff line change 59
59
60
60
上のコードでは、ファイルのアップロードを処理するためには` r.ParseMultipartForm ` をコールする必要があります。引数には` maxMemory ` が表示されています。` ParseMultipartForm ` をコールした後、アップロードするファイルは` maxMemory ` のサイズのメモリに保存されます。もしファイルのサイズが` maxMemory ` を超えた場合、残った部分はシステムのテンポラリファイルに保存されます。` r.FormFile ` によって上のファイルハンドルを取得することができます。その後実例の中では` io.Copy ` を使ってファイルを保存しています。
61
61
62
- > その他のファイルではないフィールド情報を取得する時は` r.ParseForm ` をコールする必要はありません。必要な時はGoが自動でコールします。また` ParseMultipartFrom ` を一度コールすると、その後にもう一度コールしても効果はありません。
62
+ > その他のファイルではないフィールド情報を取得する時は` r.ParseForm ` をコールする必要はありません。必要な時はGoが自動でコールします。また` ParseMultipartForm ` を一度コールすると、その後にもう一度コールしても効果はありません。
63
63
64
64
上の実例を通して、ファイルのアップロードには主に3ステップの処理があることが分かります:
65
65
66
66
1 . フォームにenctype="multipart/form-data"を追加する。
67
67
2 . サーバで` r.ParseMultipartForm ` をコールし、アップロードするファイルをメモリとテンポラリファイルに保存する。
68
68
3 . ` r.FormFile ` を使用して、ファイルハンドルを取得し、ファイルに対して保存等の処理を行う。
69
69
70
- ファイルhandlerはmultipart.FileHnadlerです 。この中には以下のような構造体が保存されています。
70
+ ファイルhandlerはmultipart.FileHeaderです 。この中には以下のような構造体が保存されています。
71
71
72
72
type FileHeader struct {
73
73
Filename string
83
83
84
84
## クライアントによるファイルのアップロード
85
85
86
- 上の例でどのようにフォームからファイルをアップロードするのか示しました。その後サーバでファイルを処理しますが、Goは実はクライアントのフォームによるファイルのアップロードをエミュレートする機能をサポートしています。詳しい仕様方法は以下の例をご覧ください :
86
+ 上の例でどのようにフォームからファイルをアップロードするのか示しました。その後サーバでファイルを処理しますが、Goは実はクライアントのフォームによるファイルのアップロードをエミュレートする機能をサポートしています。詳しい使用方法は以下の例をご覧ください :
87
87
88
88
package main
89
89
You can’t perform that action at this time.
0 commit comments