[英]How Do I Save A Mock API Call To 2 Places Using json-server?
[英]How do I access an object in an array from an API hosted by json-server
我正在使用 json-server 在我的項目中托管 API。
json-server 給我的是http://localhost:3000/records
。
{
"record": [
{
"userID": "2",
"userFirstName": "Arya",
"userLastName": "Stark",
"userMiddleName": "null",
"roleName": "Admin",
"roleID": "1"
},
{
"userID": "1",
"userFirstName": "John",
"userLastName": "Snow",
"userMiddleName": "null",
"roleName": "Moderator",
"roleID": "1"
}
]
}
我正在使用 Postman 向服務器發出GET
請求。
如何進入record
數組並訪問userID
為2
的對象?
我試過這種方式,但它返回一個空對象。
如果我錯了,請糾正我:
http://localhost:3000/records/record?userID=2
我的實際 JSON 對象文件:
{
"records": {
"record": [
{
"userID": "2",
"userFirstName": "Arya",
"userLastName": "Stark",
"userMiddleName": "null",
"roleName": "Admin",
"roleID": "1"
},
{
"userID": "1",
"userFirstName": "John",
"userLastName": "Snow",
"userMiddleName": "null",
"roleName": "Moderator",
"roleID": "1"
}
]
}
}
稍微改變一下你的 JSON 結構:
{
"records": [
{
"userID": "2",
"userFirstName": "Arya",
"userLastName": "Stark",
"userMiddleName": "null",
"roleName": "Admin",
"roleID": "1"
},
{
"userID": "1",
"userFirstName": "John",
"userLastName": "Snow",
"userMiddleName": "null",
"roleName": "Moderator",
"roleID": "1"
}
]
}
然后http://localhost:3000/records?userID=2
返回
[
{
"userID": "2",
"userFirstName": "Arya",
"userLastName": "Stark",
"userMiddleName": "null",
"roleName": "Admin",
"roleID": "1"
}
]
除了解決實際訪問問題之外,我還無法找到基於對象屬性進行過濾的解決方案,這些對象屬性是存儲在 db.json 對象的屬性中的數組的一部分。
很簡單,但您是否嘗試過只使用/records/record/2
json-server模塊從用戶那里拿走了大部分實現,這可能會起作用,因為它被設計為一個快速的 REST API 來讓人們開始。
查看文檔頁面上的示例或查看此處運行的 API http://jsonplaceholder.typicode.com/因為它使用相同的代碼。
您必須在服務器端更改某些內容以根據請求參數過濾請求
或者只是使用javascript:
data.records.record.filter((user)=>user.userID==2)[0]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.