【问题标题】:How make request post in angular?如何以角度发布请求?
【发布时间】:2019-10-10 11:46:08
【问题描述】:

目前我只从角度获取请求,就像我发布请求一样?

我有这个代码得到

getUsers() {
        const url: string = "http://localhost:8080/user/getUsers/";
        return this.http.get<Object[]>(url);
    }

如何像我一样发布请求?

我想请求这个const url: string = "/ meet / createMeetWithFriend";,但是那个 url 需要两个用户对象的 id

当我使用它时,它不会返回任何东西

const url = 'http://localhost:8080/meet/createMeetWithFriend';
        return this.http.post(url, user.id, user.id); //two id user

这是春天的终点

@PostMapping("/createMeetWithFriend")
    public ResponseEntity<Meet> createMeetWithFriend(@PathVariable("userOwner") Long idOwner, @PathVariable("user") Long idUser) {

        return new ResponseEntity<Meet>(meetService.createMeetWithFriend(idOwner, idUser), HttpStatus.OK);
    }

【问题讨论】:

  • 将所有必要的变量作为一个对象发送,并在 post 请求中连同 post 参数中的 url 一起传递。例如)return this.http.post(url, { user1: user1.id, user2: user2.id }),只要您的端点能够接受这种格式的对象,您就可以开始了。
  • 仅供参考,这不是一个非常 RESTful 的 API
  • @JamieTaylorSangerman spring端点没有问题吗?
  • @jonrsharpe 有什么问题,为什么 api 不响应?
  • 但是如何发出正确的请求取决于服务器的期望。 Angular 不在乎它是否是 Spring,这是在 API 边界上分离关注点的要点之一。无论哪种方式,我都强烈建议阅读文档(适用于 Spring 和 Angular)而不是随机猜测:angular.io/guide/http#making-a-post-request

标签: java angular spring ionic-framework


【解决方案1】:

您必须将您的身体作为对象发送,即:

const url = 'http://localhost:8080/meet/createMeetWithFriend';
        return this.http.post(url, {userId: user.id, userId2: user.id });

请记住,您的后端必须接受 JSON 作为您的发布请求的正文。

【讨论】:

  • spring端点没有问题吗?可以举个例子让spring实现控制器中的动作
猜你喜欢
  • 2019-09-19
  • 2019-12-04
  • 1970-01-01
  • 1970-01-01
  • 2021-12-01
  • 2014-02-16
  • 2018-11-10
  • 2019-10-14
  • 1970-01-01
相关资源
最近更新 更多