我想设计rest API,其中对于具有不同路径变量的同一请求可以有不同的响应参数。 示例:
URI : /mybook/{key}
场景 1:/mybook/page1
回复:
{
a: "val1",
b: "val2"
c: "val3"
}
场景 2:/mybook/page2
回复:
{
d: "value4",
e: "value5"
f: "value6"
}
场景 3:/mybook/page3
回复:
{
g: "value7",
h: "value8"
i: "value9"
}
是否可以像上面那样创建它? 应该是 3 个独立的 API 还是包含所有请求参数的单个 API?
最佳答案
如果您将页面视为一种资源,并且您只有一本书,那么您可能会将 API 设计为:
URI : /mybook/pages/{page-no}
因此您的场景将更改为:
/mybook/pages/1
/mybook/pages/2
/mybook/pages/3
否则,如果书籍
是您的资源,并且页面只是书籍的 View ,那么您可能会将API设计为:
URI : /books/{book-id}?page={page-no}
因此您的场景将更改为:
/books/my?page=1
/books/my?page=2
/books/my?page=3
关于java - 设计具有不同响应参数但相同请求的 REST API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43936331/