2016-05-23 16 views
0

formDataを使用してpdfファイルをspringにポストします。415(サポートされていないメディアタイプ)、フォームデータをSpringにポストしようとしています。

Javascriptのコード:

var formData=new FormData(); 
formData.append("file",file); 

    $http({ 
    method: 'POST', 
    accept: 'multipart/form-data', 
    url: '/upload', 
    contentType: 'multipart/form-data', 
    data: formData 
    }).then(function successCallback(response) { 
    console.log(response); 
    }, function errorCallback(response) { 
    console.log(response); 
    }); 

春コード:

@Controller 
public class upload { 


@RequestMapping(value = "/upload", method = RequestMethod.POST,consumes="multipart/form-data", headers = "content-type=multipart/form-data") 
private void upload(MultipartHttpServletRequest request, HttpServletResponse response){ 

} 
} 

このコードを使用したとき、私はエラー"415(サポートされていないメディアタイプ)"を取得します。私はjsonオブジェクト(multipart/form-dataの代わりにapplication/json)を投稿しようとしましたが、それは完全に機能しました。

私の場合、multipart/form-dataは間違ったタイプですか?または、コードにエラーがありますか?

私は潜在的な助けに非常に感謝しています。

答えて

0

受け入れ部分が間違っているため、その必要はありません。

$ httpファイルを扱うことができるようにするためには、多くのファイルをネイティブで処理しないでください。ファイルのサイズ、タイプなどを検証するためにhttps://github.com/danialfarid/ng-file-uploadを使用してください。

生の$ http解決策では、ここで2番目に早い回答を確認してください:Angularjs $http post file and form data

関連する問題