zoukankan      html  css  js  c++  java
  • [json-server] RESTful API 中,取主数据时,同时获取多个关联子表的数据

    项目背景:

    • back-end:ASP.NET Core WebAPI
    • front-end:Vue(+vue-router +vuex +axios)(webpack)(json-server + mockjs)

    mock数据部分用的 json-server + mockjs

    mockjs:通过循环创建大量数据,使用Random方法,产生出随机的数据,日期,邮箱,名字(中英),字母单词段落等

    json-server:轻松启动一个 RESTful 风格的 API 服务。

    ↓ 网上找到的不错的相关介绍博文:
    用JSON-server模拟REST API(三) 进阶使用
    json-server的关系图谱详解(Relationships) 这篇着重举例说明了关系图谱(Relationships)

    关于【关系图谱】,读完有个疑问,就是,如果一个表的 id 关联在2个表以上里,
    那能都同时取出来吗( _embed 取子数据集 )

    本文就是记录这一点补充的:

    答案是:可以的。


    http://localhost:3000/projects/1?_embed=WorkItems
    可以取 id=1 的 project 及 相关的 WorkItems

    {
        id: 1,
        name: "xxx",
        WorkItems: [
            {
                id: 1,
                name: "abc",
                projectId: 1
            },
            {
                id: 6,
                name: "def",
                projectId: 1
            }
        ]
    }

    http://localhost:3000/projects/1?_embed=Members
    可以取 id=1 的 project 及 相关的 Members 

    {
        id: 1,
        name: "xxx",
        Members: [
            {
                id: 2,
                name: "aaa",
                projectId: 1
            },
            {
                id: 7,
                name: "bbb",
                projectId: 1
            }
        ]
    }

    http://localhost:3000/projects/1?embed=WorkItems&embed=Members
    可以取 id=1 的 project 及 相关的 WorkItems 和 Members

    {
        id: 1,
        name: "xxx",
        WorkItems: [
            {
                id: 1,
                name: "abc",
                projectId: 1
            },
            {
                id: 6,
                name: "def",
                projectId: 1
            }
        ],
        Members: [
            {
                id: 2,
                name: "aaa",
                projectId: 1
            },
            {
                id: 7,
                name: "bbb",
                projectId: 1
            }
        ]
    }

    作者:码路工人

    公众号:码路工人有力量(Code-Power)

    欢迎关注个人微信公众号 Coder-Power

    一起学习提高吧~

  • 相关阅读:
    大小端判断
    引用计数
    STL_ALGORITHM_H
    书单一览
    GIT版本控制系统(二)
    JS随机数生成算法
    STL学习笔记--临时对象的产生与运用
    乱序优化与GCC的bug
    你的灯亮着吗?
    交换机和路由器
  • 原文地址:https://www.cnblogs.com/CoderMonkie/p/json-server-restful-api-get-multi-child-data.html
Copyright © 2011-2022 走看看