微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是什么原因导致“ HTTP方法名称必须是令牌”错误?

如何解决是什么原因导致“ HTTP方法名称必须是令牌”错误?

我根本无法再访问我的spring Web应用程序的url,因为它总是抛出此错误

2020-10-05 15:18:02.599  INFO 13060 --- [nio-8083-exec-1] o.apache.coyote.http11.Http11Processor   : Error parsing HTTP request header
 Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level.

java.lang.IllegalArgumentException: Invalid character found in method name [0x160x030x010x020x000x010x000x010xfc0x030x030x06m0xb9$0xccs0xc9D\0xecJA0x950x810xafM(0x1b0xbf0xad0x0d}y-}0x97S0xe70xe8e0xe30xee]. HTTP method names must be tokens
    at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:418) ~[tomcat-embed-core-9.0.37.jar:9.0.37]
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:260) ~[tomcat-embed-core-9.0.37.jar:9.0.37]
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) [tomcat-embed-core-9.0.37.jar:9.0.37]
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) [tomcat-embed-core-9.0.37.jar:9.0.37]
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1589) [tomcat-embed-core-9.0.37.jar:9.0.37]
    at org.apache.tomcat.util.net.socketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-9.0.37.jar:9.0.37]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(UnkNown Source) [na:1.8.0_261]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(UnkNown Source) [na:1.8.0_261]
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-9.0.37.jar:9.0.37]
    at java.lang.Thread.run(UnkNown Source) [na:1.8.0_261]

我尝试清理浏览器历史记录和cookie(使用不同的浏览器),尝试使用http而不是https来访问它,并尝试运行多个不同的项目(过去曾经工作过) )。我不知道我还能尝试解决什么错误

可能是什么原因造成的?

控制器:

@Controller
public class ProductController {

@Autowired
private ProductService productService;

@Autowired
public ProductController(ProductService productService) {
    this.productService = productService;
}

@GetMapping("/products")
public ModelAndView products() {
    ModelAndView mv = new ModelAndView();

    List<Product> productList = (List<Product>) productService.getAllProducts();

    mv.addobject("activeTabProducts",true);
    mv.addobject("productList",productList);

    return mv;
}

}

解决方法

我不知道为什么,但是当我尝试从匿名标签访问它时,它起作用了

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。