Spring 引导访问多部分请求(文件上传)headers 在请求完成之前
Spring boot access multipart request (file upload) headers before request completes
有没有一种方法可以在请求完成之前检查授权 header?如果用户未通过身份验证,我不想开始接受文件上传。我的代码是:
@PostMapping(path = "/uploadLogo", produces = "application/json", consumes = "multipart/form-data")
public ApiResponse handleFileUpload(@RequestParam("file") MultipartFile file, HttpServletRequest request){
System.out.println(request.getHeader("Authorization"));
...
这仅在文件上传后有效。
您可以使用 HTTP 过滤器。但这不会避免文件被上传。
HTTP 过滤器将在到达控制器之前拦截请求。如果您认为请求是正确的(具有足够的凭据),您将继续到控制器,否则,抛出异常。
我与您分享我的存储库,我在其中通过 JWT 在 HTTP 过滤器上实现了身份验证:https://github.com/serlesen/backend-social-network/tree/chapter_3
有没有一种方法可以在请求完成之前检查授权 header?如果用户未通过身份验证,我不想开始接受文件上传。我的代码是:
@PostMapping(path = "/uploadLogo", produces = "application/json", consumes = "multipart/form-data")
public ApiResponse handleFileUpload(@RequestParam("file") MultipartFile file, HttpServletRequest request){
System.out.println(request.getHeader("Authorization"));
...
这仅在文件上传后有效。
您可以使用 HTTP 过滤器。但这不会避免文件被上传。 HTTP 过滤器将在到达控制器之前拦截请求。如果您认为请求是正确的(具有足够的凭据),您将继续到控制器,否则,抛出异常。
我与您分享我的存储库,我在其中通过 JWT 在 HTTP 过滤器上实现了身份验证:https://github.com/serlesen/backend-social-network/tree/chapter_3