从Angular 6 Httpclient进行发布调用时,Java HttpServletRequest参数为空

时间:2018-08-31 00:55:20

标签: java spring angular spring-boot

我正在尝试将用户名和密码从Angular 6客户端发送到我的Spring Boot Authentication Service。

身份验证服务正在运行,因为我可以从“高级休息客户端” chrome扩展名中访问REST APT,但是当我尝试访问身份验证服务时,我的Angular客户端无法发送用户名和密码的请求正文。 这是我的代码:

getUserDetails(username, password) {
const body = {
  'username': username,
  'password': password
};

return this.http.post<TokenParams>('http://localhost:8080/login',
  body,
  {
    headers: {
      'content-type':"application/json",
      'Access-Control-Allow-Origin': '*',
      'Access-Control-Allow-Methods': 'POST',
      'Access-Control-Allow-Headers': 'Origin, Content-Type, Accept, Authorization, X-Request-With',
      'Access-Control-Allow-Credentials': 'true'
    }
  }
);

}

我能够从Java代码验证请求正文,但它返回空字符串(它从chrome扩展名返回正确的输出):

System.out.println("Request Body:\n" + req.getReader().lines() .collect( Collectors.joining( System.lineSeparator())));

请让我知道我缺少什么?

0 个答案:

没有答案