【问题标题】:Invalid character (CR or LF) found in method name in spring boot application在 Spring Boot 应用程序的方法名称中发现无效字符(CR 或 LF)
【发布时间】:2016-07-01 10:28:36
【问题描述】:

我正在使用在 localhost:8080 上运行的 Spring Boot MVC 应用程序。

我想从我的 Angularjs 应用程序中访问它,该应用程序位于 localhost/public 上运行的 xampp htdocs 文件夹中。

当我在 Spring 控制器中使用它时,Angular 服务中的 Cors 已启用并正常工作:

import org.springframework.web.bind.annotation.CrossOrigin;

@RestController
@CrossOrigin(origins = "http://localhost/public", maxAge = 3600)
@RequestMapping("/application")
public class applicationController{

    @Autowired
    private applicationRepository applicationrepository;

    @RequestMapping(method=RequestMethod.GET)
    public List<StudentApplication> list() {
        return  applicationrepository.findAll();
    }
 }

访问此端点时出现此错误:

Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.

java.lang.IllegalArgumentException: Invalid character (CR or LF) found in method name

关于这个问题的任何帮助?

【问题讨论】:

  • 错误来自 Tomcat,它表明它收到了一个包含无效字符的方法名称(GET、POST` 等)的 HTTP 请求。您如何访问端点?似乎正在发送格式错误的 HTTP 请求

标签: angularjs spring


【解决方案1】:

因为你的 localhost:8080 你也应该指定端口

@CrossOrigin(origins = "http://localhost:8080/public", maxAge = 3600)

如果这对你有用,请告诉我

【讨论】:

  • 不,这不起作用,但是当我从 angualr 向 localhost:8080 发送请求时,@CrossOrigin() 对我有用。
  • 你能不能把它改成@CrossOrigin(origins = "localhost:8080", maxAge = 3600)
  • 不,它不起作用。任何 url m 指定都是有问题的
猜你喜欢
  • 2016-10-16
  • 1970-01-01
  • 1970-01-01
  • 2011-01-27
  • 2019-05-19
  • 2017-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多