首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在REST API中检索相关数据的最佳实践

在REST API中检索相关数据的最佳实践
EN

Stack Overflow用户
提问于 2011-09-18 18:36:29
回答 1查看 930关注 0票数 3

因此,我有一个REST API,其中有一个资源,其中链接了其他资源(从编程的角度来看,是相关的模型)。

所以我现在的做法是,每当我请求资源时,都会通过URL ('/ related _data/related_data_id/')引用相关的资源。

然而,我担心,假设有5个与我正在检索的资源相关的资源,我会执行5个GET请求。我正在编写一个iPhone客户端,我想知道这是否是使用REST (我正在返回URL)来正确完成它的方法。JSON响应示例如下:

代码语言:javascript
复制
{
"meta": {
            "limit": 20, 
            "next": null, 
            "offset": 0, 
            "previous": null, 
            "total_count": 2
        }, 
"objects": [
    {
        "away_team": "/api/team/3/", 
        "country": "/api/country/1/", 
        "event_date": "2011-08-16", 
        "event_time": "06:00:00", 
        "event_timezone": "GMT", 
        "home_team": "/api/team/4/", 
        "id": "1", 
        "level": "/api/level/4/", 
        "resource_uri": "/api/event/1/", 
        "tournament": "/api/tournament/1/"
    }, 
    {
        "away_team": "/api/team/4/", 
        "country": "/api/country/1/", 
        "event_date": "2011-09-29", 
        "event_time": "12:00:00", 
        "event_timezone": "UTC", 
        "home_team": "/api/team/3/", 
        "id": "2", 
        "level": "/api/level/1/", 
        "resource_uri": "/api/event/2/", 
        "tournament": "/api/tournament/6/"
    }
]
}

考虑到“每个URI都必须映射到一个资源”以及所有这些事情,在REST中这样做是正确的吗?

我用的是Django和django-tastypie

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-19 13:31:22

是的,如果相关的资源是独立更新的,这是合适的。REST架构依赖于缓存来提高性能,因此最适合使用充当原子实体的资源(请参阅more here)。这样,您可以更新资源B并使其表示新鲜,而不必更新资源A。有关更多设计细节,请参阅this SO comment

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7460934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档