我正在访问第三方 API(不是公共 API),我只想获取特定字段。如何做到这一点?
假设我有一个 API
{{URL}}/api/records/:recordId
,它返回以下内容:
{
"id": 707348,
"created-at": "2024-04-08T14:28:23-07:00",
"updated-at": "2024-04-08T14:28:24-07:00",
"currency": {
"code": "USD"
},
"approvals": [
{
"id": 5612517,
"created-at": "2024-04-08T14:28:24-07:00",
"updated-at": "2024-04-08T14:28:46-07:00",
"position": 1,
"approval-chain-id": 729,
"status": "approved"
},
{
"id": 5612518,
"created-at": "2024-04-08T14:28:42-07:00",
"updated-at": "2024-04-08T14:28:42-07:00",
"position": 2,
"approval-chain-id": null,
"status": "pending_approval"
}
]
}
在这里,如果我添加这样的查询参数,
{{URL}}/api/records/:recordId?fields=["id", "created-at"]
然后我会得到想要的结果:
{
"id": 707348,
"created-at": "2024-04-08T14:28:23-07:00"
}
我怎样才能检索
currency
(一个对象)或该对象中的某些值?与 approvals
相同,它是一个数组。
如果我这样做
{{coupa_url}}/api/invoices/:invoiceId?fields=["currency"]
那么我只会得到一个带有 200
响应的空数组。
我能够使用
fields
如下所示获得所需的结果。
即,
{{URL}}/api/records/:recordId?fields=["id", "created-at",{"currency":{}}]
返回下方。
{
"id": 707348,
"created-at": "2024-04-08T14:28:23-07:00",
"currency": {
"code": "USD"
}
}
{{URL}}/api/records/:recordId?fields=["id", "created-at",{"approvals":{}}]
返回下方。
{
"id": 707348,
"created-at": "2024-04-08T14:28:23-07:00",
"approvals": [
{
"id": 5612517,
"created-at": "2024-04-08T14:28:24-07:00",
"updated-at": "2024-04-08T14:28:46-07:00",
"position": 1,
"approval-chain-id": 729,
"status": "approved"
},
{
"id": 5612518,
"created-at": "2024-04-08T14:28:42-07:00",
"updated-at": "2024-04-08T14:28:42-07:00",
"position": 2,
"approval-chain-id": null,
"status": "pending_approval"
}
]
}