server.go
func (ctx *RequestCtx) FormFile(key string) (*multipart.FileHeader, error) {
	mf, err := ctx.MultipartForm()
	if err != nil {
		return nil, err
	}
	if mf.File == nil {
		return nil, err
	}
	fhh := mf.File[key]
	if fhh == nil {
		return nil, ErrMissingFile
	}
	return fhh[0], nil
}
func (ctx *RequestCtx) FormFile(key string) (*multipart.FileHeader, error) {
	mf, err := ctx.MultipartForm()
	if err != nil {
		return nil, err
	}
	if mf.File == nil {
		return nil, err
	}
	fhh := mf.File[key]
	if fhh == nil {
		return nil, ErrMissingFile
	}
	return fhh[0], nil
}
func ( ctx * RequestCtx ) FormFile ( key string ) ( * multipart . FileHeader , error ) { mf , err := ctx . MultipartForm ( ) if err != nil { return nil , err } if mf . File == nil { return nil , err } fhh := mf . File [ key ] if fhh == nil { return nil , ErrMissingFile } return fhh [ 0 ] , nil }
// FormFile returns uploaded file associated with the given multipart form key.
//
// The file is automatically deleted after returning from RequestHandler,
// so either move or copy uploaded file into new place if you want retaining it.
//
// Use SaveMultipartFile function for permanently saving uploaded file.
//
// The returned file header is valid until returning from RequestHandler.
FormFile returns uploaded file associated with the given multipart form key . The file is automatically deleted after returning from RequestHandler so either move or copy uploaded file into new place if you want retaining it . Use SaveMultipartFile function for permanently saving uploaded file . The returned file header is valid until returning from RequestHandler .