【问题标题】:I can't consume microservice Spring我不能消费微服务 Spring
【发布时间】:2018-01-20 12:25:23
【问题描述】:

我正在学习 java Spring,我想使用一个微服务,所以我用 HTML 创建了一个表单,并尝试使用 axios 发送用户和密码

var helloWorld = new Vue({
el: '#vue-app',
    data: 
{
    user: "user",
    username : "",
    password : ""
},
methods: 
{
    enviar: function()
    {
         axios.post('/user/login', {
             user: this.username,
             password: this.password
         })
         .then(function (response) {
             console.log(response);
         })
         .catch(function (error) {
             console.log(error);
         });
    }
}

});

我尝试获取信息

@Controller("/user")
public class UserController {

private final Log log = LogFactory.getLog(UserController.class);

@PostMapping("/login")
public boolean login(@RequestParam("user") String user, @RequestParam("password") String password)
{
    log.info("user: " + user + " password: " + password);
    return user.equals("hitzu") && password.equals("250693");

}
}`

但是当我尝试运行代码时出现错误 404,我尝试在 Postman 中设置 URL

http://localhost:8080/user/login?user=hitzu&password=250693

但得到同样的错误。

【问题讨论】:

  • 检查 UserController 所在的包是否被扫描。
  • 这样有一个带有用户名和密码的 HTML 链接正常吗?

标签: spring spring-mvc controller microservices axios


【解决方案1】:

您可能会收到 404,因为您的控制器认为它应该将 View 与其获取的数据绑定。

告诉它不要绑定视图,本质上使其成为 REST 端点,并通过使用 @ResponseBody 注释您的方法直接写入 HTTP 响应正文。

Some further info on @ResponseBody from the Documentation

【讨论】:

    猜你喜欢
    • 2018-04-06
    • 1970-01-01
    • 2021-07-23
    • 2018-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多