如何通过HATEOAS使POST API参数动态化?

时间:2018-07-10 13:02:30

标签: rest api api-design hateoas

我们有一个电子商务网站,用户可以通过与购买者共享联系信息来查看股票并显示对特定股票的兴趣。以下是为用户获取股票清单的API。

网址:/api/stocks/

类型:GET

响应:

{
  "stocks": [
    {
      "id": "123",
      "city": "Bangalore",
      "price": "5,000"
    },
    {
      "id": "124",
      "city": "Mumbai",
      "price": "3,000"
    }
  ],
  "links": [
    {
      "rel": "nextPageUrl",
      "href": "/api/used/stock/?pn=2",
      "action": "GET"
    },
    {
      "rel": "stockleads",
      "href": "http://localhost/api/stockleads/",
      "action": "POST"
    }
  ]
}

This是根据HATEOAS创建上述结构的参考。

stockleads API为POST类型,并且期望与以下对象类似的东西:

{
    "name" : "xyz",
    "mobile" : "9999999999",
    "trackingParams" : {}
}

最近,我们需要记录带有潜在客户的股票价格(将来可以是其他任何字段)。因此,我们必须在客户端进行更改。现在,

  1. 要使stockleads API完全由服务器驱动,我们应该在api / stocks /的GET中发送stockleads对象,以便我们可以添加或删除参数,而无需在客户端进行任何更改。
  2. 进行相同操作的可能方式及其优势是什么?

0 个答案:

没有答案