Authored by cille

update: fix bug

package com.begete.web.controller.tool;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.*;
import com.begete.common.annotation.RepeatSubmit;
import org.springframework.web.bind.annotation.*;
import com.begete.common.core.controller.BaseController;
import com.begete.common.core.domain.AjaxResult;
import com.begete.common.utils.StringUtils;
... ... @@ -36,6 +29,15 @@ public class TestController extends BaseController
users.put(2, new UserEntity(2, "ry", "admin123", "15666666666"));
}
@ApiOperation("测试重复提交")
@RepeatSubmit
@PostMapping("/testRepeat")
public AjaxResult testRepeat(@RequestBody HashMap map) throws InterruptedException {
Thread.sleep(2000);
return AjaxResult.success(map);
}
@ApiOperation("获取用户列表")
@GetMapping("/list")
public AjaxResult userList()
... ...
... ... @@ -24,13 +24,28 @@ public class RepeatableFilter implements Filter
}
public static void main(String[] args) {
// System.out.println(
// "application/json;charset=UTF-8".contains(MediaType.APPLICATION_JSON_VALUE)
// );
System.out.println(
StringUtils.equalsAnyIgnoreCase( "application/json", MediaType.APPLICATION_JSON_VALUE)
);
System.out.println(
StringUtils.equalsAnyIgnoreCase( "application/json;charset=UTF-8", MediaType.APPLICATION_JSON_VALUE)
);
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException
{
ServletRequest requestWrapper = null;
if (request instanceof HttpServletRequest
&& StringUtils.equalsAnyIgnoreCase(request.getContentType(), MediaType.APPLICATION_JSON_VALUE))
&& request.getContentType() != null
&& request.getContentType().contains(MediaType.APPLICATION_JSON_VALUE)
// && StringUtils.equalsAnyIgnoreCase(request.getContentType(), MediaType.APPLICATION_JSON_VALUE)
)
{
requestWrapper = new RepeatedlyRequestWrapper((HttpServletRequest) request, response);
}
... ...