1

ファイルをアップロードしてサーバー側で読み取ろうとしています。しかし、ファイルを読み取ることができず、代わりに例外が発生しています

Required MultipartFile parameter 'file' is not present

以下は、同じコードのスニペットです。ここで何か間違ったことをしている場合は、親切に教えてもらえますか。サーバー側で ajax リクエストによって送信されたファイルを読み取る他の方法はありますか。

<form  id="dealform" method="post" enctype="multipart/form-data" type="file">
<input type="file" name="file" id="upload_file" style="visibility: hidden;width:0px;height:0px;"/><input id="fg-upload-button" type="submit" value="Upload" style="display:none;"/>
</form>

this.getRecord              = function(params)      {

            var file = $('#upload_file').prop("files")[0];

            $.ajax({
                url         : /Upload,
                data        : file,
                type        : 'POST',
                dataType    : 'json',
                timeout     : json_timeout,
                error       : function(){
                    that.notifyGetDataError('error getting:');                  
                },
                success     : function(data){
                    that.notifyGetDataSuccess();
                }
            });
        };

In the controller :

@RequestMapping(value = "/Upload.json", method = RequestMethod.POST)
    public ModelAndView getContents(@RequestParam("file") MultipartFile file) { 
}

Using the below in applicationContext.xml

<bean id="multipartResolver"
   class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
</bean>
4

4 に答える 4

0

content-type が multipart/form-data であるため、ファイルを dataType="json" として送信していますが、これが問題を引き起こしている可能性があります

ajax ファイルのアップロードについては、このリンクFormData をたどってください

あなたの問題の別のリンクはここにあります

MultipartFileのコントローラーコードがあるこのリンクをたどることができます

于 2013-11-05T12:57:21.043 に答える
0

コードは、ファイル自体をペイロードとしてサーバーに渡しています。ただし、コントローラーは、ファイルがパラメーター「file」の値として送信されることを期待しています

于 2013-11-05T12:55:52.463 に答える
0

コントローラ メソッドでは、リクエスト パラメータの名前を data に変更するだけです。

@RequestMapping(value = "/Upload.json", method = RequestMethod.POST)
    public ModelAndView getContents(@RequestParam("data") MultipartFile file) { 
}
于 2020-09-07T06:06:23.180 に答える