如何使用JavaScript返回部分API JSON响应对象?

时间:2017-08-31 03:48:28

标签: javascript json angular jsonp observable

我正在使用One Bus Away API,它返回一个如下所示的响应对象:

  {
      "code": 200,
      "currentTime": 1504150060044,
      "data": {
          "entry": {
              "arrivalsAndDepartures": [
                {AnD_item1},
                {AnD_item2},
                {AnD_item3}                    
              ],
              "nearbyStopIds": [],
              "situationIds": [],
              "stopId": "1_570"
          },
          "references": {
              "agencies": [],
              "routes": [],
              "stops": [],
              "trips":[]
          }
      },
      "text": "OK",
      "version": 2
  }

当我正在构建我的数据服务时,我想要一个只与“arrivalsAndDepartures”数组混淆的方法。有没有办法可以改变API调用,以便我最终得到“arrivalsAndDepartures”数组?我以为我可以使用Map方法来改变API响应,但我没有运气。

2 个答案:

答案 0 :(得分:0)

限制API响应的唯一方法是在API上设置一个可选的GET参数,该参数返回有限数量的结果。

使用JavaScript只能返回部分JSON有效负载。

答案 1 :(得分:0)

如何使用Observables的.map()函数?

您的代码将如下所示:

this.http.get('yourAPIEndpointhere')
    .map(res=>res.data.entry.arrivalsAndDepartures);